hubbub build failure when doing guix package -u

  • Done
  • quality assurance status badge
Details
4 participants
  • Andreas Enge
  • Andy Tai
  • Greg Hogan
  • Bruno Victal
Owner
unassigned
Submitted by
Andy Tai
Severity
normal
Blocked by
A
A
Andy Tai wrote on 15 May 2023 21:24
(address . bug-guix@gnu.org)
CAJsg1E_iwbiQMQi-xPDwSEa55w3b1OVvv5gjegsHfgutXSFE7A@mail.gmail.com
key lines:

COMPILE: test/tokeniser2.c
COMPILE: test/tokeniser3.c
COMPILE: test/tree.c
COMPILE: test/tree2.c
COMPILE: test/tree-buf.c
test/tokeniser2.c: In function ‘token_handler’:
test/tokeniser2.c:444:46: error: ‘t.data.character.ptr’ may be used
uninitialized [-Werror=maybe-uninitialized]
444 | t.data.character.ptr += len;
| ^~
test/tokeniser2.c:441:38: note: ‘t’ declared here
441 | hubbub_token t;
| ^
test/tokeniser2.c:445:46: error: ‘t.data.character.len’ may be used
uninitialized [-Werror=maybe-uninitialized]
445 | t.data.character.len -= len;
| ^~
test/tokeniser2.c:441:38: note: ‘t’ declared here
441 | hubbub_token t;
| ^
test/tokeniser3.c: In function ‘token_handler’:
test/tokeniser3.c:453:46: error: ‘t.data.character.ptr’ may be used
uninitialized [-Werror=maybe-uninitialized]
453 | t.data.character.ptr += len;
| ^~
test/tokeniser3.c:450:38: note: ‘t’ declared here
450 | hubbub_token t;
| ^
test/tokeniser3.c:454:46: error: ‘t.data.character.len’ may be used
uninitialized [-Werror=maybe-uninitialized]
454 | t.data.character.len -= len;
| ^~
test/tokeniser3.c:450:38: note: ‘t’ declared here
450 | hubbub_token t;
| ^
LINK: build-x86_64-unknown-linux-gnu-x86_64-unknown-linux-gnu-release-lib-shared/test_entities
LINK: build-x86_64-unknown-linux-gnu-x86_64-unknown-linux-gnu-release-lib-shared/test_csdetect
LINK: build-x86_64-unknown-linux-gnu-x86_64-unknown-linux-gnu-release-lib-shared/test_tokeniser
LINK: build-x86_64-unknown-linux-gnu-x86_64-unknown-linux-gnu-release-lib-shared/test_parser
cc1: all warnings being treated as errors
make: *** [/gnu/store/3jqaqf59ra550lk7hvpgpg8l5krxizra-netsurf-buildsystem-1.9/share/netsurf-buildsystem/makefiles/Makefile.top:631:
build-x86_64-unknown-linux-gnu-x86_64-unknown-linux-gnu-release-lib-shared/test_tokeniser2.o]
Error 1
make: *** Waiting for unfinished jobs....
cc1: all warnings being treated as errors
make: *** [/gnu/store/3jqaqf59ra550lk7hvpgpg8l5krxizra-netsurf-buildsystem-1.9/share/netsurf-buildsystem/makefiles/Makefile.top:631:
build-x86_64-unknown-linux-gnu-x86_64-unknown-linux-gnu-release-lib-shared/test_tokeniser3.o]
Error 1

Test suite failed, dumping logs.
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("test" "-j"
"31" "COMPONENT_TYPE=lib-shared" "CC=gcc" "BUILD_CC=gcc"
"PREFIX=/gnu/store/7fn6jxg1vpadm8rpa8rzbwqgipxlwync-hubbub-0.3.7"
"NSSHARED=/gnu/store/3jqaqf59ra550lk7hvpgpg8l5krxizra-netsurf-buildsystem-1.9/share/netsurf-buildsystem")
exit-status: 2 term-signal: #f stop-signal: #f>
phase `check' failed after 0.2 seconds
command "make" "test" "-j" "31" "COMPONENT_TYPE=lib-shared" "CC=gcc"
"BUILD_CC=gcc" "PREFIX=/gnu/store/7fn6jxg1vpadm8rpa8rzbwqgipxlwync-hubbub-0.3.7"
"NSSHARED=/gnu/store/3jqaqf59ra550lk7hvpgpg8l5krxizra-netsurf-buildsystem-1.9/share/netsurf-buildsystem"
failed with status 2
A
A
Andy Tai wrote on 22 May 2023 08:44
[PATCH] gnu: hubbub: Disable building tests
(address . 63526@debbugs.gnu.org)(name . Andy Tai)(address . atai@atai.org)
0b33a2a18cd178f84c55db0b295b0d0010d3cbd1.1684737820.git.atai@atai.org

* gnu/packages/web.scm (hubbub): [arguments] (tests): Set to #f to disable test build
---
gnu/packages/web.scm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

Toggle diff (19 lines)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index fe52f673e2..203e3283cf 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -5252,7 +5252,9 @@ (define-public hubbub
perl))
(propagated-inputs
(list libparserutils)) ;for libhubbub.pc
- (arguments netsurf-buildsystem-arguments)
+ (arguments
+ `(#:tests? #f ;build error in building tests with gcc 11; skip for now
+ ,@netsurf-buildsystem-arguments))
(home-page "https://www.netsurf-browser.org/projects/hubbub/")
(synopsis "HTML5 compliant parsing library")
(description

base-commit: 3abcf1663b86bc075e29563140698d8bfae44992
--
2.40.1
G
G
Greg Hogan wrote on 25 May 2023 15:02
(name . Andy Tai)(address . atai@atai.org)(address . 63526@debbugs.gnu.org)
CA+3U0ZnSpb-Rdws3AuFtf5=NAZYKjs0J7wc-Wyh0gg6iWffRQQ@mail.gmail.com
On Mon, May 22, 2023 at 2:46?AM Andy Tai <atai@atai.org> wrote:
Toggle quote (28 lines)
>
> Fix for https://debbugs.gnu.org/cgi/bugreport.cgi?bug=63526
>
> * gnu/packages/web.scm (hubbub): [arguments] (tests): Set to #f to disable test build
> ---
> gnu/packages/web.scm | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
> index fe52f673e2..203e3283cf 100644
> --- a/gnu/packages/web.scm
> +++ b/gnu/packages/web.scm
> @@ -5252,7 +5252,9 @@ (define-public hubbub
> perl))
> (propagated-inputs
> (list libparserutils)) ;for libhubbub.pc
> - (arguments netsurf-buildsystem-arguments)
> + (arguments
> + `(#:tests? #f ;build error in building tests with gcc 11; skip for now
> + ,@netsurf-buildsystem-arguments))
> (home-page "https://www.netsurf-browser.org/projects/hubbub/")
> (synopsis "HTML5 compliant parsing library")
> (description
>
> base-commit: 3abcf1663b86bc075e29563140698d8bfae44992
> --
> 2.40.1

Hi Andy,

Disabling tests should be a last resort, especially without a process
to evaluate re-enabling tests in the future.

Based on the error, can we instead add
"-Wno-error=maybe-uninitialized" to the configure-flags?

Greg
B
B
Bruno Victal wrote on 25 May 2023 15:35
(address . 63526@debbugs.gnu.org)
3c4419ef-5d5e-451f-8985-ef4b8e06d068@makinata.eu
On 2023-05-25 14:02, Greg Hogan wrote:
Toggle quote (5 lines)
> Hi Andy,
>
> Disabling tests should be a last resort, especially without a process
> to evaluate re-enabling tests in the future.

I concur.

A test failure, unless it is caused by things such as “requiring
network access” or is expected due to guix specifics should be
considered a problem with the package. (if tests are disabled simply
because they happen to fail without doing any investigation, why have
tests at all?)

Toggle quote (3 lines)
> Based on the error, can we instead add
> "-Wno-error=maybe-uninitialized" to the configure-flags?

I'd report this upstream first, it can be the case that the error
(which is being flagged by the compiler) is unmasking a real bug
upstream.


--
Furthermore, I consider that nonfree software must be eradicated.

Cheers,
Bruno.
A
A
Andy Tai wrote on 25 May 2023 19:54
(name . Bruno Victal)(address . mirai@makinata.eu)
CAJsg1E-F4Gb1_3U3HEQb6BQtDWcqk_VF=AZtbAxdr=zOCLwPpQ@mail.gmail.com
Will do. Thanks

On Thu, May 25, 2023 at 6:35?AM Bruno Victal <mirai@makinata.eu> wrote:
Toggle quote (11 lines)
>
> On 2023-05-25 14:02, Greg Hogan wrote:

>
> > Based on the error, can we instead add
> > "-Wno-error=maybe-uninitialized" to the configure-flags?
>
> I'd report this upstream first, it can be the case that the error
> (which is being flagged by the compiler) is unmasking a real bug
> upstream.
>
A
A
Andy Tai wrote on 27 May 2023 09:29
[PATCH v2] gnu (hubbub): Fix build
(name . Andy Tai)(address . atai@atai.org)
8a20497755db7ee3c2ecfa9a3fc931011718036d.1685172508.git.atai@atai.org

* gnu/packages/web.scm (hubbub): [source](patches): Add patch to fix build.
* gnu/packages/patches/hubbub-prevent-Werror-maybe-uninitialized-build-failure-wit.patch: New file
* gnu/local.mk (dist_patch_DATA): Add it.
---
gnu/local.mk | 2 +
...aybe-uninitialized-build-failure-wit.patch | 40 +++++++++++++++++++
gnu/packages/web.scm | 4 +-
3 files changed, 45 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/hubbub-prevent-Werror-maybe-uninitialized-build-failure-wit.patch

Toggle diff (85 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 18e8235140..e2b42ca676 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -58,6 +58,7 @@
# Copyright © 2022 jgart <jgart@dismail.de>
# Copyright © 2023 Zheng Junjie <873216071@qq.com>
# Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
+# Copyright © 2023 Andy Tai <atai@atai.org>
#
# This file is part of GNU Guix.
#
@@ -1349,6 +1350,7 @@ dist_patch_DATA = \
%D%/packages/patches/http-parser-CVE-2020-8287.patch \
%D%/packages/patches/htslib-for-stringtie.patch \
%D%/packages/patches/hubbub-sort-entities.patch \
+ %D%/packages/patches/hubbub-prevent-Werror-maybe-uninitialized-build-failure-wit.patch \
%D%/packages/patches/hueplusplus-mbedtls.patch \
%D%/packages/patches/hurd-add-without-rump-configure-option.patch \
%D%/packages/patches/hurd-fix-types-of-read-write-and-readables-methods-2.patch \
diff --git a/gnu/packages/patches/hubbub-prevent-Werror-maybe-uninitialized-build-failure-wit.patch b/gnu/packages/patches/hubbub-prevent-Werror-maybe-uninitialized-build-failure-wit.patch
new file mode 100644
index 0000000000..6f289a770e
--- /dev/null
+++ b/gnu/packages/patches/hubbub-prevent-Werror-maybe-uninitialized-build-failure-wit.patch
@@ -0,0 +1,40 @@
+From 69d81a8a4d4c223aad67cde0fdf64d64351b9802 Mon Sep 17 00:00:00 2001
+From: Andy Tai <atai@atai.org>
+Date: Sat, 27 May 2023 00:01:34 -0700
+Subject: [PATCH] prevent -Werror=maybe-uninitialized build failure with gcc 11
+ when building tests tokeniser2 and tokeniser3
+
+---
+ test/tokeniser2.c | 2 +-
+ test/tokeniser3.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/test/tokeniser2.c b/test/tokeniser2.c
+index c8ab9c0..4caae38 100644
+--- a/test/tokeniser2.c
++++ b/test/tokeniser2.c
+@@ -438,7 +438,7 @@ hubbub_error token_handler(const hubbub_token *token, void *pw)
+ /* Expected token only contained part of the data
+ * Calculate how much is left, then try again with
+ * the next expected token */
+- hubbub_token t;
++ hubbub_token t = { 0 };
+
+ t.type = HUBBUB_TOKEN_CHARACTER;
+ t.data.character.ptr += len;
+diff --git a/test/tokeniser3.c b/test/tokeniser3.c
+index e33d018..b3be901 100644
+--- a/test/tokeniser3.c
++++ b/test/tokeniser3.c
+@@ -447,7 +447,7 @@ hubbub_error token_handler(const hubbub_token *token, void *pw)
+ /* Expected token only contained part of the data
+ * Calculate how much is left, then try again with
+ * the next expected token */
+- hubbub_token t;
++ hubbub_token t = { 0 };
+
+ t.type = HUBBUB_TOKEN_CHARACTER;
+ t.data.character.ptr += len;
+--
+2.40.1
+
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 3af4aa0b8d..387ceac058 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -5242,7 +5242,9 @@ (define-public hubbub
(sha256
(base32
"1dimfyblmym98qa1b80c5jslv2zk8r44xbdrgrsrw1n9wr9y4yly"))
- (patches (search-patches "hubbub-sort-entities.patch"))))
+ (patches (search-patches
+ "hubbub-sort-entities.patch"
+ "hubbub-prevent-Werror-maybe-uninitialized-build-failure-wit.patch"))))
(build-system gnu-build-system)
(native-inputs
(list netsurf-buildsystem

base-commit: b96b82bcd4bc24529941ff74a91432481f1a71b5
--
2.40.1
A
A
Andy Tai wrote on 8 Jun 2023 04:52
(name . GNU bug tracker automated control server)(address . control@debbugs.gnu.org)
CAJsg1E-4A0pWivgFxpEUvqpZZNEDh400YFUPwmHkB2akABLRCA@mail.gmail.com
block 63526 by 63592
A
A
Andy Tai wrote on 8 Jun 2023 05:34
(name . GNU bug tracker automated control server)(address . control@debbugs.gnu.org)
CAJsg1E-HnVA3CbAaA+jtsxMG2Gpq0SU8wkej1Fr8fir8QYVoYA@mail.gmail.com
unblock 63526 by 63592
block 63526 by 63952
A
A
Andreas Enge wrote on 9 Jun 2023 13:07
Re: ping on a build fix for a build failure (main branch)
(name . Andy Tai)(address . atai@atai.org)
ZIMH8od9OFbMA4Ur@jurong
Hello Andy,

Am Tue, May 30, 2023 at 10:54:20AM -0700 schrieb Andy Tai:
Toggle quote (6 lines)
> Hi, following previous comments (thanks) I have submitted a patch to
> correctly fix a build failure due to compiler warnings, instead of
> avoiding not building tests, on this Guix bug issue:
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=63526
> Please review the patch (which shall be a simple and low risk fix). Thanks!

I have reworked a bit the punctuation of the commit message, shortened
the patch file name and pushed. By this I am closing the two corresponding
bug reports (it would have been enough to send a second version of the
patch to the first bug).

Did you contact upstream? Looking at the test, it looked wrong before and
after your patch...
if (len < token->data.character.len) {
hubbub_token t = { 0 };
t.type = HUBBUB_TOKEN_CHARACTER;
t.data.character.ptr += len;
t.data.character.len -= len;
...
Adding to a previously undefined, now 0 pointer .ptr raised a warning
for a reason, I think; and it looks like the t.data maybe should be
token->data. But it is quite possible that this branch is not even
reached by the test.

Andreas
Closed
A
A
Andy Tai wrote on 9 Jun 2023 19:28
(name . Andreas Enge)(address . andreas@enge.fr)
CAJsg1E-P3vWaokpZpcJnfrJxDtihb_YpooyWaCavmHhSt4=8uA@mail.gmail.com
I did contact upstream, no response

On Fri, Jun 9, 2023 at 4:07?AM Andreas Enge <andreas@enge.fr> wrote:
Toggle quote (32 lines)
>
> Hello Andy,
>
> Am Tue, May 30, 2023 at 10:54:20AM -0700 schrieb Andy Tai:
> > Hi, following previous comments (thanks) I have submitted a patch to
> > correctly fix a build failure due to compiler warnings, instead of
> > avoiding not building tests, on this Guix bug issue:
> > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=63526
> > Please review the patch (which shall be a simple and low risk fix). Thanks!
>
> I have reworked a bit the punctuation of the commit message, shortened
> the patch file name and pushed. By this I am closing the two corresponding
> bug reports (it would have been enough to send a second version of the
> patch to the first bug).
>
> Did you contact upstream? Looking at the test, it looked wrong before and
> after your patch...
> if (len < token->data.character.len) {
> hubbub_token t = { 0 };
> t.type = HUBBUB_TOKEN_CHARACTER;
> t.data.character.ptr += len;
> t.data.character.len -= len;
> ...
> Adding to a previously undefined, now 0 pointer .ptr raised a warning
> for a reason, I think; and it looks like the t.data maybe should be
> token->data. But it is quite possible that this branch is not even
> reached by the test.
>
> Andreas
>


--
Andy Tai, atai@atai.org, Skype: licheng.tai, Line: andy_tai, WeChat: andytai1010
Year 2023 ??112?
????????????
????????????
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 63526@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 63526
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch