Source: librist Version: 0.2.8+dfsg-1 Severity: serious Tags: ftbfs Justification: fails to build from source (but built successfully in the past)
The new version of librist in unstable is failing its build-time tests on all 32-bit architectures (armel, armhf, i386 and several ports architectures): > Summary of Failures: > > 3/21 libRIST:simple+unicast / Simple profile unicast packet loss 10% > FAIL > 0.05s killed by signal 11 SIGSEGV > 4/21 libRIST:simple+unicast / Simple profile unicast packet loss 25% > FAIL > 0.03s killed by signal 11 SIGSEGV It's likely to be easy to reproduce this on an amd64 machine by building the i386 package (debuild -ai386), either cross-compiling or in an i386 chroot, container or VM. This is a regression since 0.2.7+dfsg-1, so I would suggest starting by reviewing the differences between those versions. This could be related to one of these compiler warnings, which indicate assumptions in the source code that are not true on ILP32 architectures: > ../tools/srp_shared.c: In function ‘user_verifier_lookup’: > ../tools/srp_shared.c:176:43: warning: left shift count >= width of type > [-Wshift-count-overflow] > 176 | *generation = (buf.st_mtim.tv_sec << 32) | > buf.st_mtim.tv_nsec; > | ^~ > ../tools/ristreceiver.c: In function ‘cb_stats’: > ../tools/ristreceiver.c:446:86: warning: cast from pointer to integer of > different size [-Wpointer-to-int-cast] > 446 | rist_prometheus_parse_stats(prom_stats_ctx, > stats_container, (uint64_t)arg); > | > ^ > ../tools/ristsender.c: In function ‘setup_rist_peer’: > ../tools/ristsender.c:447:74: warning: cast to pointer from integer of > different size [-Wint-to-pointer-cast] > 447 | if (rist_stats_callback_set(ctx, setup->statsinterval, > cb_stats, (void*)w->id) == -1) { > | > ^ Or it could be something more subtle that gcc is unable to diagnose, like type-size assumptions in a varargs function. (It also failed to build on arm64, but that seems to be unrelated: a different test failed there with an assertion failure, that test has failed similarly in the past, and it doesn't fit the pattern of 64-bit architectures succeeding but 32-bit failing. That's out of scope for this particular bug report.) librist4:i386 is pulled in by this dependency chain for users of Wine: wine32 -> libwine -R-> gstreamer1.0-libav -> libavformat60 -> librist4 (where -R-> indicates a Recommends) so having both amd64 and i386 versions installed is going to be a relatively normal thing to do. Please could you take a look? Thanks, smcv