Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 184312 - xorg-server-1.3.0, x11-apps/bdftopcf fail to emerge w/ freetype-2.3.5 (ft_isdigit isn't defined anymore in the ftstdlib.h)
Summary: xorg-server-1.3.0, x11-apps/bdftopcf fail to emerge w/ freetype-2.3.5 (ft_isd...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Linux
: High major (vote)
Assignee: Gentoo X packagers
URL: http://forums.gentoo.org/viewtopic-t-...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-07-05 15:21 UTC by Hamlet
Modified: 2007-08-02 00:09 UTC (History)
3 users (show)

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


Attachments
emerge --info from a failing Gentoo (P4) (emerge-info.bardulph,3.84 KB, text/plain)
2007-07-05 15:23 UTC, Hamlet
Details
emerge --info from a failing Gentoo (Core2) (emerge-info.puck,3.80 KB, text/plain)
2007-07-05 15:23 UTC, Hamlet
Details
emerge --info from a Gentoo where it worked (opteron) (emerge-info.elsinor,4.11 KB, text/plain)
2007-07-05 15:24 UTC, Hamlet
Details
Emerge log (2 MB, bzip2) (xorg-server-1.3.0.0-build.puck.log.bz2,58.82 KB, application/octet-stream)
2007-07-05 15:25 UTC, Hamlet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Hamlet 2007-07-05 15:21:21 UTC
Emerging Xorg server version 1.3.0.0 fails since a ft_isdigit symbol is missing in libXfont.so .

Always fails on two Gentoo systems (a Core2 - amd64 - and a pentium4 - x86), same result.
Successful on another one (opteron - amd64).


Reproducible: Sometimes

Steps to Reproduce:
1. emerge -1u =x11-base/xorg-server-1.3.0.0
2.
3.

Actual Results:  
Error:

creating libosandcommon.la
(cd .libs && rm -f libosandcommon.la && ln -s ../libosandcommon.la libosandcommon.la)
/bin/sh ../../libtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -DHAVE_XORG_CONFIG_H -DXF86PM -Wall -Wpointer-arith -Wstri
x86_64-pc-linux-gnu-gcc -DHAVE_XORG_CONFIG_H -DXF86PM -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissin
/usr/lib64/libXfont.so: undefined reference to `ft_isdigit'
collect2: ld returned 1 exit status
make[4]: *** [Xorg] Error 1
make[4]: Leaving directory `/var/tmp/portage/x11-base/xorg-server-1.3.0.0/work/xorg-server-1.3.0.0/hw/xfree86'


Expected Results:  
>>> x11-base/xorg-server-1.3.0.0 merged.


Piece of output of "emerge -p1uv xorg-server":

[ebuild     U ] x11-base/xorg-server-1.3.0.0 [1.2.0-r3] USE="dri ipv6 nptl sdl xorg (-3dfx) -debug -dmx -kdrive -minimal -xprint" INPUT_DEVICES="evdev joystick keyboard mouse -acecad -aiptek -calcomp -citron -digitaledge -dmc -dynapro -elo2300 -elographics -fpit -hyperpen -jamstudio -magellan -microtouch -mutouch -palmax -penmount -spaceorb -summa -synaptics -tek4957 -ur98 -vmmouse -void -wacom" VIDEO_CARDS="apm fglrx radeon tga v4l vesa vga vmware -ark -chips -cirrus -cyrix -dummy -epson -fbdev -glint -i128 (-i740) -i810 (-impact) (-imstt) -mach64 -mga -neomagic (-newport) (-nsc) -nv -nvidia -r128 -rendition -s3 -s3virge -savage -siliconmotion -sis -sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx) -tdfx -trident -tseng -via -voodoo" 0 kB

See attachment below for complete log and emerge information.
Comment 1 Hamlet 2007-07-05 15:23:06 UTC
Created attachment 123965 [details]
emerge --info from a failing Gentoo (P4)
Comment 2 Hamlet 2007-07-05 15:23:59 UTC
Created attachment 123967 [details]
emerge --info from a failing Gentoo (Core2)
Comment 3 Hamlet 2007-07-05 15:24:39 UTC
Created attachment 123969 [details]
emerge --info from a Gentoo where it worked (opteron)
Comment 4 Hamlet 2007-07-05 15:25:28 UTC
Created attachment 123971 [details]
Emerge log (2 MB, bzip2)
Comment 5 Hamlet 2007-07-05 15:26:38 UTC
Discussion in reported URL points to the solution in employing libXfont 1.3.0 rather than 1.2.8 .
Comment 6 Scott Stoddard 2007-07-05 16:34:17 UTC
I can confirm that bumping to libXfont-1.3.0 resolves this problem on my core2 ~amd64 system.
Comment 7 Hamlet 2007-07-05 21:43:22 UTC
I have tried xorg-server ebuild 1.2.0-r3 on the core2 machine, and the error is the same.
I think the problem is actually on libXfree-1.2.8. On the P4 (x86, 32 bit):

$ equery list libXfont
[I--] [ ~] x11-libs/libXfont-1.2.8 (0)

$ ldd -r /usr/lib/libXfont.so
undefined symbol: ft_isdigit    (/usr/lib/libXfont.so)
        linux-gate.so.1 =>  (0xb7f36000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7e19000)
        libz.so.1 => /lib/libz.so.1 (0xb7e05000)
        libm.so.6 => /lib/libm.so.6 (0xb7de1000)
        libfontenc.so.1 => /usr/lib/libfontenc.so.1 (0xb7ddb000)
        libc.so.6 => /lib/libc.so.6 (0xb7cb9000)
        /lib/ld-linux.so.2 (0x80000000)

In both P4 and Core2 machines, the ft_isdigit symbol is not defined.
Looking in source code, ft_isdigit is a #define, an alias for isdigit() function, and the former is not even expected to leave the local scope.
Xorg server probably doesn't even use it, and the problem is just an unresolved symbol in libXfont.
In the opteron machine (where all works just fine), no ft_isdigit symbol is present in the library file.
By the way, the ChangeLog of libXfont mentions something related to this. Maybe a "backport" of changes in src/FreeType/fttools.c from 1.3.0 to 1.2.8 would solve this issue.
Comment 8 Jakub Moc (RETIRED) gentoo-dev 2007-07-06 07:46:50 UTC
This breaks as x11-apps/bdftopcf as well, and like more; freetype-2.3.5 should be masked until this is solved.
Comment 9 Dennis Schridde 2007-07-06 10:35:46 UTC
A fix is to compile libXfont (any version has this problem) with CFLAGS='-Dft_isdigit=isdigit'
Comment 10 Donnie Berkholz (RETIRED) gentoo-dev 2007-07-06 17:20:04 UTC
A rebuild of libXfont against the newer freetype should pretty much fix this. It's a conditional #define in libXfont that is a compatibility fix for freetype. In other words, if you built libXfont against old freetype and upgrade freetype without upgrading libXfont, things break. The code:

/* backward compatibility hack */
#if (FREETYPE_VERSION < 2001008)
# ifndef ft_isdigit
#  define ft_isdigit isdigit
# endif
#endif
Comment 11 Ryan Hill (RETIRED) gentoo-dev 2007-07-07 00:53:01 UTC
I've added a postinst message to warn the user they should rebuild libXfont.  That and the libXfont version bump today should catch most cases.
Comment 12 Donnie Berkholz (RETIRED) gentoo-dev 2007-08-02 00:09:57 UTC
Marking fixed since we've done about all we can.