Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 555622 - app-editors/emacs-vcs-25.0.50_pre20150630[cairo] : ftcrfont.c:109:5: error: ‘ftfont_driver’ undeclared (first use in this function)
Summary: app-editors/emacs-vcs-25.0.50_pre20150630[cairo] : ftcrfont.c:109:5: error: ‘...
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Emacs project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-22 12:15 UTC by Toralf Förster
Modified: 2015-07-28 15:03 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge log (app-editors-emacs-vcs-25.0.50_pre20150630-20150722-112158.log,152.35 KB, text/plain)
2015-07-22 12:15 UTC, Toralf Förster
Details
package history (app-editors-emacs-vcs-25.0.50_pre20150630-20150722-112158.pks,142.92 KB, text/plain)
2015-07-22 12:15 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2015-07-22 12:15:02 UTC
Created attachment 407404 [details]
emerge log

x86_64-pc-linux-gnu-gcc -std=gnu99 -c  -Demacs  -I. -I. -I../lib -I../lib   -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include   -I/usr/include/alsa  -pthread -I/usr/include/librsvg-2.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16     -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include          -MMD -MF deps/ftfont.d -MP   -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16    -march=native -O2 -pipe  ftfont.c
ftfont.c: In function ‘ftfont_open’:
ftfont.c:1310:3: warning: implicit declaration of function ‘font_build_object’ [-Wimplicit-function-declaration]
   font_object = font_build_object (VECSIZE (struct ftfont_info),
   ^
x86_64-pc-linux-gnu-gcc -std=gnu99 -c  -Demacs  -I. -I. -I../lib -I../lib   -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include   -I/usr/include/alsa  -pthread -I/usr/include/librsvg-2.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16     -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include          -MMD -MF deps/ftcrfont.d -MP   -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16    -march=native -O2 -pipe  ftcrfont.c
ftcrfont.c: In function ‘ftcrfont_glyph_extents’:
ftcrfont.c:109:5: error: ‘ftfont_driver’ undeclared (first use in this function)
     ftfont_driver.text_extents (font, &glyph, 1, cache);
     ^
ftcrfont.c:109:5: note: each undeclared identifier is reported only once for each function it appears in
ftcrfont.c: In function ‘ftcrfont_list’:
ftcrfont.c:120:22: error: ‘ftfont_driver’ undeclared (first use in this function)
   Lisp_Object list = ftfont_driver.list (f, spec), tail;
                      ^
ftcrfont.c: In function ‘ftcrfont_match’:
ftcrfont.c:130:24: error: ‘ftfont_driver’ undeclared (first use in this function)
   Lisp_Object entity = ftfont_driver.match (f, spec);
                        ^
ftcrfont.c: In function ‘ftcrfont_open’:
ftcrfont.c:152:3: warning: implicit declaration of function ‘font_build_object’ [-Wimplicit-function-declaration]
   font_object = font_build_object (VECSIZE (struct ftcrfont_info),
   ^
ftcrfont.c: In function ‘ftcrfont_close’:
ftcrfont.c:189:3: error: ‘ftfont_driver’ undeclared (first use in this function)
   ftfont_driver.close (font);
   ^
ftcrfont.c: In function ‘syms_of_ftcrfont’:
ftcrfont.c:298:21: error: ‘ftfont_driver’ undeclared (first use in this function)
   ftcrfont_driver = ftfont_driver;
                     ^
Makefile:363: recipe for target 'ftcrfont.o' failed
make[1]: *** [ftcrfont.o] Error 1
make[1]: Leaving directory '/var/tmp/portage/app-editors/emacs-vcs-25.0.50_pre20150630/work/emacs/src'
Makefile:398: recipe for target 'src' failed
make: *** [src] Error 2
 * ERROR: app-editors/emacs-vcs-25.0.50_pre20150630::gentoo failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=app-editors/emacs-vcs-25.0.50_pre20150630::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=app-editors/emacs-vcs-25.0.50_pre20150630::gentoo'`.
 * The complete build log is located at '/var/log/portage/app-editors:emacs-vcs-25.0.50_pre20150630:20150722-112158.log'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/app-editors/emacs-vcs-25.0.50_pre20150630/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-editors/emacs-vcs-25.0.50_pre20150630/temp/environment'.
 * Working directory: '/var/tmp/portage/app-editors/emacs-vcs-25.0.50_pre20150630/work/emacs'
 * S: '/var/tmp/portage/app-editors/emacs-vcs-25.0.50_pre20150630/work/emacs'

  -----------------------------------------------------------------

  This is an unstable amd64 chroot image (named amd64-gnome-unstable_20150719-194535/) at a hardened host acting as a tinderbox.

Portage 2.2.20 (python 2.7.10-final-0, default/linux/amd64/13.0/desktop/gnome, gcc-4.9.3, glibc-2.21-r1, 4.0.8-hardened x86_64)
=================================================================
System uname: Linux-4.0.8-hardened-x86_64-Intel-R-_Core-TM-_i7-3770_CPU_@_3.40GHz-with-gentoo-2.2
KiB Mem:    16164692 total,   1163596 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Wed, 22 Jul 2015 09:45:01 +0000
sh bash 4.3_p39
ld GNU ld (Gentoo 2.25 p1.2) 2.25
ccache version 3.2.2 [disabled]
app-shells/bash:          4.3_p39::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.22.0::gentoo
dev-lang/python:          2.7.10::gentoo, 3.3.5-r1::gentoo
dev-util/ccache:          3.2.2::gentoo
dev-util/cmake:           3.2.3::gentoo
dev-util/pkgconfig:       0.28-r3::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.17::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r1::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25-r1::gentoo
sys-devel/gcc:            4.8.4::gentoo, 4.9.3::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6-r1::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.21-r1::gentoo
Repositories:

local
    location: /usr/local/portage
    masters: gentoo

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: 9999

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/var/tmp/distfiles"
EMERGE_DEFAULT_OPTS="--nospinner --tree --quiet-build --accept-properties=-interactive --accept-restrict=-fetch"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.uni-erlangen.de/pub/mirrors/gentoo rsync://mirror.netcologne.de/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gor.bytemark.co.uk/gentoo/ rsync://ftp.snt.utwente.nl/gentoo"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi aes-ni alsa amd64 apache2 avx avx2 berkdb bluetooth branding btrfs bzip2 cairo cdda cdr cgi cli colord consolekit corefonts cracklib crypt cups curl cxx dbus designer dnssec dot dri drmkms dts dvd dvdr ecc eds emboss encode evo exif extraengine fam firefox flac fortran fpm gdbm gif glamor gnome gnome-keyring gnome-online-accounts gpm gstreamer gtk gudev gui iconv icu inifile introspection ipv6 jadetex jpeg lcms libkms libnotify libsecret logrotate mad mbox minizip mmx mmxext mng modules mp3 mp4 mpeg multilib nautilus ncurses nls nptl ogg opengl openmp pam pango pax_kernel pcre pcre16 pdf plasma policykit postgres ppds pulseaudio qemu qml qt3support qt4 readline sdl session spell spice sqlite sqlite3 sse sse2 sse4 sse4_1 sse4_2 ssl ssse3 startup-notification svg tcl tcpd tiff tracker truetype udev udisks uml unicode upower usb usbredir vorbis wxwidgets x264 xcb xkb xml xslt xv xvfb xvid xvmc zenmap zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104 v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_GB" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Toralf Förster gentoo-dev 2015-07-22 12:15:15 UTC
Created attachment 407406 [details]
package history
Comment 2 Ulrich Müller gentoo-dev 2015-07-24 19:55:14 UTC
I can reproduce the problem with your USE flag settings. Both the 20150331 and 20150430 snapshots (the latter in my local overlay only) still compile fine, whereas the 20150531 snapshot fails. Emacs from git master (as of today) also fails with your USE flags.

Git bisecting shows that the breakage originates from the cairo branch:

   dddcc0e78452f2186c132823a33a174d2596ba33 is the first bad commit
   commit dddcc0e78452f2186c132823a33a174d2596ba33
   Author: Jan D <jan.h.d@swipnet.se>
   Date:   Wed Feb 11 16:14:35 2015 +0100

       Add cairo drawing.


Can you please report the bug upstream? There is little we could do here at the distro level.
Comment 3 Toralf Förster gentoo-dev 2015-07-25 13:25:54 UTC
(In reply to Ulrich Müller from comment #2)

> Can you please report the bug upstream? There is little we could do here at
> the distro level.

https://bugs.freedesktop.org/show_bug.cgi?id=91460
Comment 4 Ulrich Müller gentoo-dev 2015-07-25 15:46:34 UTC
(In reply to Toralf Förster from comment #3)
> (In reply to Ulrich Müller from comment #2)
> 
> > Can you please report the bug upstream? There is little we could do here at
> > the distro level.
> 
> https://bugs.freedesktop.org/show_bug.cgi?id=91460

Sorry, I should have phrased it more clearly. The bug originates from the cairo branch of *Emacs* upstream and should be reported there.
Comment 5 Toralf Förster gentoo-dev 2015-07-26 08:57:17 UTC
A first answer from  rgm@gnu.org :


Toralf Förster wrote:

> https://bugs.gentoo.org/show_bug.cgi?id=555622

If I may summarise:

./configure --with-cairo --without-xft

fails with undefined reference to ftfont_driver in ftcrfont.c.

Perhaps this is simply not a sensible set of configure options to use.

I would also suggest that Gentoo stop enabling --with-cairo,
and that the --with-cairo option perhaps be labelled experimental.
Comment 6 Ulrich Müller gentoo-dev 2015-07-26 11:05:52 UTC
Upstream bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=21133
Comment 7 Ulrich Müller gentoo-dev 2015-07-28 15:03:13 UTC
I've added a workaround to the ebuild. The "cairo" USE flag only takes effect if the "xft" flag is also set:
https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-editors/emacs-vcs/emacs-vcs-25.0.9999-r1.ebuild?r1=1.9&r2=1.10