[BLFS Trac] #2518: Xorg-7.2 libXfont

BLFS Trac trac at linuxfromscratch.org
Mon Apr 28 11:06:41 PDT 2008

#2518: Xorg-7.2 libXfont
 Reporter:  randy at linuxfromscratch.org  |        Owner:  blfs-book at linuxfromscratch.org
     Type:  task                        |       Status:  new                           
 Priority:  normal                      |    Milestone:  6.3                           
Component:  BOOK                        |      Version:  SVN                           
 Severity:  normal                      |   Resolution:                                
 Keywords:                              |  
Comment (by dnicholson at linuxfromscratch.org):

 For bdftopcf vs. libXfont-1.2.x/libXfont-1.3.x, I'd like to understand the
 error more before closing this. For installing libXfont-1.2.x vs.
 libXfont-1.3.x, 1.3.x should be fine on either Xorg. The reason I didn't
 push in the update is because libXfont-1.3.x has a big new feature, which
 is neat, but different than the libXfont from Xorg-7.2:


 The part I don't get is how compiling bdftopcf could make the linker throw
 that error. I would have expected it to be seen when compiling libXfont. I
 suppose that if the compiler didn't know that ft_isdigit was a macro (the
 needed freetype header wasn't included), it would just bind it into
 libXfont as a symbol that it would expect to be resolved at runtime. If
 the macro had been resolved correctly when compiling libXfont, then the
 symbol in libXfont would be isdigit or __ctype_b_loc (if isdigit is a
 macro, too). And that's what I see if I build libXfont-1.2.8 against

 $ nm src/.libs/libXfont.so | egrep '(isdigit|__ctype_b)'
          U __ctype_b_loc@@GLIBC_2.3

 Now I found the problem. It's in freetype-2.3.5 where they stopped
 defining the ft_* macros:

 diff -pNur /usr/include/freetype2/freetype/config/ftstdlib.h
 --- /usr/include/freetype2/freetype/config/ftstdlib.h   2007-04-23
 14:27:00.000000000 -0700
 +++ dest/usr/include/freetype2/freetype/config/ftstdlib.h       2008-04-28
 11:04:03.000000000 -0700
 @@ -78,15 +78,6 @@

 -#include <ctype.h>
 -#define ft_isalnum   isalnum
 -#define ft_isdigit   isdigit
 -#define ft_islower   islower
 -#define ft_isupper   isupper
 -#define ft_isxdigit  isxdigit
  #include <string.h>

  #define ft_memchr   memchr

Ticket URL: <http://wiki.linuxfromscratch.org/blfs/ticket/2518#comment:4>
BLFS Trac <http://wiki.linuxfromscratch.org/blfs>
Beyond Linux From Scratch

More information about the blfs-book mailing list