On Sun, Feb 23, 2020 at 3:49 PM Mukundan Ragavan <
nonamedotc(a)gmail.com> wrote:
> Hi all,
>
> I have two packages that fail to build from source. As far as I can
> tell
> from the build logs, they are gcc-10 failures. The typical "extern"
> solution does not work me (or, I am not adding 'extern' at the
> correct
> places).
>
> Can someone give me pointers for fixing this FTBFS? Here are the
> links
> containing the build logs -
>
> xfce4-panel:
>
https://bugzilla.redhat.com/show_bug.cgi?id=1800267
I looked briefly at xfce4-panel and I mostly saw warnings for
deprecated declarations on Gtk2 symbols, something I'd be willing to
disregard until that component is migrated to Gtk+3.
I performed a mock build with -Wall and -Werror and broke it down
like this:
grep -F '[-Werror=' results_xfce4-panel/4.14.3/2.fc33/build.log |
awk '{print $NF}' |
sort |
uniq -c |
sort -rn
480 [-Werror=unused-parameter]
44 [-Werror=deprecated-declarations]
24 [-Werror=missing-field-initializers]
6 [-Werror=cast-function-type]
2 [-Werror=unused-but-set-variable]
2 [-Werror=enum-conversion]
To get all the warnings I added -k to %make_build.
The first two can be disabled safely at %configure time, but the rest
probably need to be fixed (I would personally fix everything).
It would be nice if the xfce4-panel developers had -Wall and -Wextra
turned into errors in their continuous integration or development
process. But with so many warnings, probably trivial to silence
properly, I don't have time to help produce patches.
> xfce4-sensors-plugin:
>
https://bugzilla.redhat.com/show_bug.cgi?id=1800268
I didn't try to produce a comprehensive build.log locally for this
one, but the fgets warning visible in bugzilla is super legit and
should be fixed, but the manual doesn't say precisely how errors are
handled and if the null character is always added then ignoring the
return value is harmless.
Having -Wall and -Wextra with -Werror is the perfect footgun, since
you’re at the mercy of whatever compiler is being used. Get yourself a
manageable set of warnings and make those fatal instead.
--
Ernestas Kulik
Associate Software Engineer - Base Operating Systems (Core
Services/ABRT)
Red Hat Czech, s.r.o.