Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1741077

Summary: eiskaltdcpp-2.2.11-23.20190527git09b9ffe.fc31 FTBFS: /usr/include/pango-1.0/pango/pango-coverage.h:28:10: fatal error: hb.h: No such file or directory
Product: [Fedora] Fedora Reporter: Petr Pisar <ppisar>
Component: eiskaltdcppAssignee: Vasiliy Glazov <vascom2>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 31CC: vascom2
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://apps.fedoraproject.org/koschei/build/6802250
Whiteboard:
Fixed In Version: eiskaltdcpp-2.2.11-24.20190922gita85c5d8.fc31 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-10-02 00:46:24 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Petr Pisar 2019-08-14 08:19:45 UTC
eiskaltdcpp-2.2.11-23.20190527git09b9ffe.fc31 fails to build in F31:

BUILDSTDERR: cd /builddir/build/BUILD/eiskaltdcpp-eiskaltdcpp-09b9ffe/eiskaltdcpp-gtk && /usr/bin/c++  -DCLIENT_DATA_DIR=\"/usr/share/eiskaltdcpp\" -DCLIENT_ICONS_DIR=\"/usr/share/eiskaltdcpp/gtk/icons\" -DCLIENT_RES_DIR=\"/usr/share/eiskaltdcpp/gtk/resources\" -DCLIENT_SOUNDS_DIR=\"/usr/share/eiskaltdcpp/sounds\" -DCLIENT_TRANSLATIONS_DIR=\"/usr/share/eiskaltdcpp/qt/translations\" -DFREE_SPACE_BAR_C -DGSEAL_ENABLE -DLOCALE_DIR=\"/usr/share/locale\" -DLUA_SCRIPT -DUSE_LIBNOTIFY -DWITH_DHT -D_DATADIR=\"/usr/share/eiskaltdcpp\" -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_REENTRANT -I/builddir/build/BUILD/eiskaltdcpp-eiskaltdcpp-09b9ffe -I/builddir/build/BUILD/eiskaltdcpp-eiskaltdcpp-09b9ffe/eiskaltdcpp-gtk -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/gtk-3.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/builddir/build/BUILD/eiskaltdcpp-eiskaltdcpp-09b9ffe/eiskaltdcpp-gtk/..  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protection -std=c++14 -pipe -Wformat -Werror=format-security -fPIC -D_FORTIFY_SOURCE=2 -O2 -g -DNDEBUG   -o CMakeFiles/eiskaltdcpp-gtk.dir/src/UserCommandMenu.cc.o -c /builddir/build/BUILD/eiskaltdcpp-eiskaltdcpp-09b9ffe/eiskaltdcpp-gtk/src/UserCommandMenu.cc
[...]
BUILDSTDERR: make[2]: Leaving diIn file included from /usr/include/pango-1.0/pango/pango-font.h:25,
BUILDSTDERR:                  from /usr/include/pango-1.0/pango/pango-attributes.h:25,
BUILDSTDERR:                  from /usr/include/pango-1.0/pango/pango.h:25,
BUILDSTDERR:                  from /usr/include/gtk-3.0/gdk/gdktypes.h:35,
BUILDSTDERR:                  from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:30,
BUILDSTDERR:                  from /usr/include/gtk-3.0/gdk/gdk.h:32,
BUILDSTDERR:                  from /usr/include/gtk-3.0/gtk/gtk.h:30,
BUILDSTDERR:                  from /builddir/build/BUILD/eiskaltdcpp-eiskaltdcpp-09b9ffe/eiskaltdcpp-gtk/src/UserCommandMenu.hh:23,
BUILDSTDERR:                  from /builddir/build/BUILD/eiskaltdcpp-eiskaltdcpp-09b9ffe/eiskaltdcpp-gtk/src/UserCommandMenu.cc:21:
BUILDSTDERR: /usr/include/pango-1.0/pango/pango-coverage.h:28:10: fatal error: hb.h: No such file or directory
BUILDSTDERR:    28 | #include <hb.h>
BUILDSTDERR:       |          ^~~~~~

A difference between passing and failing build root is at <https://apps.fedoraproject.org/koschei/build/6802250>.

An upgrade of pango-devel from 1.43.0-4.fc31 to 1.44.3-1.fc31 looks suspicious.

Comment 1 Petr Pisar 2019-08-14 08:38:30 UTC
/usr/include/pango-1.0/pango/pango-coverage.h includes <hb.h>. <hb.h> is delivered by harfbuzz-devel:

# dnf --quiet repoquery --whatprovides '*/hb.h'
harfbuzz-devel-0:2.5.3-3.fc31.i686
harfbuzz-devel-0:2.5.3-3.fc31.x86_64
mingw32-harfbuzz-0:2.5.3-2.fc31.noarch
mingw64-harfbuzz-0:2.5.3-2.fc31.noarch
# dnf --quiet repoquery --list harfbuzz-devel |grep hb.h
/usr/include/harfbuzz/hb.h
/usr/include/harfbuzz/hb.h

pango-devel run-require "pkgconfig(harfbuzz) >= 2.0.0" provided by harfbuzz-devel. pango pkg-config module correctly inherits harfbuzz include path:

# pkg-config --cflags pango |grep harf
-I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/cairo -I/usr/include/pixman-1 

But the UserCommandMenu.cc compiler command line is missing he harfbuzz include path.

I conclude eiskaltdcpp does not use pango pkg-config module for retrieving pango CFLAGS.

Comment 2 Vasiliy Glazov 2019-08-14 09:16:47 UTC
I am not understand all.
Do you have solution?

Comment 3 Petr Pisar 2019-08-14 10:55:01 UTC
Solution is to fix the cmake scripts eiskaltdcpp uses. I'm sorry but I'm not going to do that. I recommend you forward this issue to the upstream with wording that eiskaltdcpp does not build with pango-1.44.3 because of that.

Comment 4 Vasiliy Glazov 2019-08-14 12:59:35 UTC
Thanks.

Comment 5 Vasiliy Glazov 2019-08-14 13:04:43 UTC
https://github.com/eiskaltdcpp/eiskaltdcpp/issues/414

Comment 6 Fedora Update System 2019-09-23 08:27:55 UTC
FEDORA-2019-24bc5799d8 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-24bc5799d8

Comment 7 Fedora Update System 2019-09-24 01:23:39 UTC
eiskaltdcpp-2.2.11-24.20190922gita85c5d8.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-24bc5799d8

Comment 8 Fedora Update System 2019-10-02 00:46:24 UTC
eiskaltdcpp-2.2.11-24.20190922gita85c5d8.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report.