Bug#987587: libpango1.0-udeb: hangs the installer in various situations
Cyril Brulebois
kibi at debian.org
Thu Apr 29 17:54:56 BST 2021
Cyril Brulebois <kibi at debian.org> (2021-04-29):
> This time around, testing 1.43.0 with debian/ carried over from
> debian/1.42.4-8, adjusted for docs (some files are missing) and symbols
> (one new symbol), the problem cannot be triggered in an obvious manner.
>
> Moving to 1.44* tags now.
Alright, I think I'm hitting my limits here.
Versions 1.44, 1.44.2, and 1.44.3 all fail in a similar way:
[39/144] cc -Ipango/libpangoft2-1.0.so.0.4400.0.p -Ipango -I../pango -I. -I.. -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/fribidi -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/uuid -I/usr/include/cairo -I/usr/include/pixman-1 -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=gnu99 -D_POSIX_C_SOURCE=200809L -D_POSIX_THREAD_SAFE_FUNCTIONS -D_GNU_SOURCE -g -O2 -ffile-prefix-map=/home/kibi/hack/pango1.0.git=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Wimplicit-function-declaration -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wno-int-conversion -Wno-discarded-qualifiers -fno-strict-aliasing -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wformat-nonliteral -Wformat-security -Wunused -Wcast-align -Wmissing-noreturn -Wmissing-format-attribute -Wmissing-include-dirs -Wlogical-op -Wno-uninitialized -Wno-shadow -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=array-bounds -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Werror=empty-body -Werror=write-strings -Wundef -Werror=redundant-decls -fvisibility=hidden '-DG_LOG_DOMAIN="Pango"' -DG_LOG_USE_STRUCTURED=1 -DPANGO_COMPILATION '-DSYSCONFDIR="/etc"' '-DLIBDIR="/usr/lib/x86_64-linux-gnu"' -DPANGO_DISABLE_DEPRECATION_WARNINGS -MD -MQ pango/libpangoft2-1.0.so.0.4400.0.p/pangofc-font.c.o -MF pango/libpangoft2-1.0.so.0.4400.0.p/pangofc-font.c.o.d -o pango/libpangoft2-1.0.so.0.4400.0.p/pangofc-font.c.o -c ../pango/pangofc-font.c
FAILED: pango/libpangoft2-1.0.so.0.4400.0.p/pangofc-font.c.o
cc -Ipango/libpangoft2-1.0.so.0.4400.0.p -Ipango -I../pango -I. -I.. -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/fribidi -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/uuid -I/usr/include/cairo -I/usr/include/pixman-1 -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=gnu99 -D_POSIX_C_SOURCE=200809L -D_POSIX_THREAD_SAFE_FUNCTIONS -D_GNU_SOURCE -g -O2 -ffile-prefix-map=/home/kibi/hack/pango1.0.git=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Wimplicit-function-declaration -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wno-int-conversion -Wno-discarded-qualifiers -fno-strict-aliasing -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wformat-nonliteral -Wformat-security -Wunused -Wcast-align -Wmissing-noreturn -Wmissing-format-attribute -Wmissing-include-dirs -Wlogical-op -Wno-uninitialized -Wno-shadow -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=array-bounds -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Werror=empty-body -Werror=write-strings -Wundef -Werror=redundant-decls -fvisibility=hidden '-DG_LOG_DOMAIN="Pango"' -DG_LOG_USE_STRUCTURED=1 -DPANGO_COMPILATION '-DSYSCONFDIR="/etc"' '-DLIBDIR="/usr/lib/x86_64-linux-gnu"' -DPANGO_DISABLE_DEPRECATION_WARNINGS -MD -MQ pango/libpangoft2-1.0.so.0.4400.0.p/pangofc-font.c.o -MF pango/libpangoft2-1.0.so.0.4400.0.p/pangofc-font.c.o.d -o pango/libpangoft2-1.0.so.0.4400.0.p/pangofc-font.c.o -c ../pango/pangofc-font.c
../pango/pangofc-font.c: In function ‘get_face_metrics’:
../pango/pangofc-font.c:371:44: error: ‘HB_OT_METRICS_UNDERLINE_SIZE’ undeclared (first use in this function); did you mean ‘HB_OT_METRICS_TAG_UNDERLINE_SIZE’?
371 | if (hb_ot_metrics_get_position (hb_font, HB_OT_METRICS_UNDERLINE_SIZE, &position))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
| HB_OT_METRICS_TAG_UNDERLINE_SIZE
../pango/pangofc-font.c:371:44: note: each undeclared identifier is reported only once for each function it appears in
../pango/pangofc-font.c:374:44: error: ‘HB_OT_METRICS_UNDERLINE_OFFSET’ undeclared (first use in this function); did you mean ‘HB_OT_METRICS_TAG_UNDERLINE_OFFSET’?
374 | if (hb_ot_metrics_get_position (hb_font, HB_OT_METRICS_UNDERLINE_OFFSET, &position))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| HB_OT_METRICS_TAG_UNDERLINE_OFFSET
../pango/pangofc-font.c:377:44: error: ‘HB_OT_METRICS_STRIKEOUT_SIZE’ undeclared (first use in this function); did you mean ‘HB_OT_METRICS_TAG_STRIKEOUT_SIZE’?
377 | if (hb_ot_metrics_get_position (hb_font, HB_OT_METRICS_STRIKEOUT_SIZE, &position))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
| HB_OT_METRICS_TAG_STRIKEOUT_SIZE
../pango/pangofc-font.c:380:44: error: ‘HB_OT_METRICS_STRIKEOUT_OFFSET’ undeclared (first use in this function); did you mean ‘HB_OT_METRICS_TAG_STRIKEOUT_OFFSET’?
380 | if (hb_ot_metrics_get_position (hb_font, HB_OT_METRICS_STRIKEOUT_OFFSET, &position))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| HB_OT_METRICS_TAG_STRIKEOUT_OFFSET
Version 1.44.4 is the first one I was able to build, using the packaging
from debian/1.44.6-1 (first 1.44.x version that was packaged and that's
also known to be buggy).
This would suggest the regression in caused by something in here:
Overview of changes in 1.44.4
=============================
- Add an insert-hyphens attribute
- Reinstate the return type of pango_fc_font_lock_face
- Fix a problem with ellipses getting the wrong font
- fc: Improve filtering by font format
- Re-add PangoFcFont to public headers
- Install PangoFc and PangoOT introspection files
- Fix ink rectangles to have positive height
- Fix mark positioning
- Switch to using harfbuzz for metrics
Overview of changes in 1.44.3
=============================
- Install pango-ot headers
- Make subpixel positioning optional
- fc: Ignore fonts with unsupported formats
Overview of changes in 1.44.2
=============================
- Disable ligatures when letterspacing
- Set design coords on hb_font_t
- Expose more font options in pango-view
- OS X: Make 'system-ui' font work
- Keep deprecated pango-fc apis in headers
- Make hex boxes work, always
- introspection: Various build fixes
- introspection: Add PangoPT, PangoFT2 namespaces
- layout: Make the new line-spacing opt-in
Overview of changes in 1.44.1
=============================
- Fix a crash with allow_break attributes
- Fix Emoji spacing
- Fix up includes and pkg-config requires
- Correct some cases for hyphen insertion
Overview of changes in 1.44.0
=============================
- Use harfbuzz for shaping on all platforms
- Stop using freetype for font loading; this
drops support for type1 and bitmap fonts
- Add a getter for hb_font_t
- Make PangoCoverage a GObject
- Add a pango_tailor_break api
- font metrics: Add line height
- layout: Support line spacing
- layout: Draw hyphens for line breaks
- Add an attribute to suppress line breaking
- cairo: Don't render hex boxes for space
- Add an attribute to show invisible characters
- Stop quantizing glyph positions
- Add tests for itemization and line breaking
- Remove language and shape engine remnants
- Rename meson options: gtk_doc, introspection
- Require GLib 2.59.2
- Require Harfbuzz 2.0
but as mentioned initially, I don't think I can go deeper in my “blind”
(I don't know anything about pango or rendering in general) bisection of
pango1.0.
At first, the upstream/fix-deadlocks* branches sounded promising,
especially with such a commit message:
Fix hangs that people have observed
but those are regression fixes in the 1.48.x series, and a quick look
around in previous versions doesn't seem to show similar initialization
routines, so someone else is likely happening in 1.44.x…
Help/pointers appreciated.
Cheers,
--
Cyril Brulebois (kibi at debian.org) <https://debamax.com/>
D-I release manager -- Release team member -- Freelance Consultant
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-gnome-maintainers/attachments/20210429/4025f572/attachment.sig>
More information about the pkg-gnome-maintainers
mailing list