I've just added a memo under people/ishikawa/ about FreeType backend
build problem when defined FontLibSharedFreeType=YES.

 I want to merge this change into branches/4.3.0/sid/debian/rules.

 Any comments?


Modified: people/ishikawa/4.3.0-0pre1v1-xrender-xcursor-split/rules
==============================================================================
--- people/ishikawa/4.3.0-0pre1v1-xrender-xcursor-split/rules   2003-06-06 04:16:38 
UTC (rev 154)
+++ people/ishikawa/4.3.0-0pre1v1-xrender-xcursor-split/rules   2003-06-06 06:10:20 
UTC (rev 155)
@@ -67,7 +67,7 @@
 # lines. Ever.
 TIMESTAMP:=$(shell env TZ=UTC date +%Y%m%d%H%M%S)
 IMAKE_DEFINES:=-DXFree86CustomVersion='\"Debian $(SOURCE_VERSION) $(TIMESTAMP) 
$(BUILDER)\"'
-SERVERDEBUG_IMAKE_DEFINES:=-DXFree86CustomVersion='\"Debian (static) 
$(SOURCE_VERSION) $(TIMESTAMP) $(BUILDER)\"' -DBuildServersOnly=YES 
-DDoLoadableServer=NO -DXnestServer=NO -DXVirtualFramebufferServer=NO -DXprtServer=NO 
$(DEBUGFLAGS)
+SERVERDEBUG_IMAKE_DEFINES:=-DXFree86CustomVersion='\"Debian (static) 
$(SOURCE_VERSION) $(TIMESTAMP) $(BUILDER)\"' -DBuildServersOnly=YES 
-DDoLoadableServer=NO -DFontLibSharedFreeType=NO -DXnestServer=NO 
-DXVirtualFramebufferServer=NO -DXprtServer=NO $(DEBUGFLAGS)
 
 # If this is an official build, set the BuilderEMailAddr that gets displayed in
 # some error messages.



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

 If BuildFreeType && UseFreetype2 && !DoLoadableServer, lib/font/FreeType
builds with external FreeType2 because in xc/config/X11.tmpl defined as
following:

----------------
/*
 * There's no reason to use the statically built FreeType unless
 * you're using a loadable server.
 */
 
#ifndef FontLibSharedFreeType
#if BuildFreeType && UseFreetype2 && !DoLoadableServer 
#define FontLibSharedFreeType YES
#else
#define FontLibSharedFreeType NO
#endif
#endif

#if FontLibSharedFreeType
         FONTFT2LIB = $(FREETYPE2LIB)
#endif
----------------

 BuildFreeType and UseFreetype2 is always YES on Debian xfree86 package build.
 DoLoadableServer is defined as NO when we build the static XFree86 server
(XFree86-dbg) for xserver-xfree86-dbg.

 So, xserver-xfree86-dbg will be built with external shared FreeType2 library.

 XFree86 4.3.0 tree contains FreeType 2.1.3 (with some modifications).
Currently sid includes FreeType2 2.1.4.  Between FreeType 2.1.3 and 2.1.4,
`struct  PS_FontInfoRec' interface is changed likes this:


----- 2.1.3
  typedef struct  PS_FontInfoRec
  {
(snip)
    FT_Short    underline_position;
    FT_UShort   underline_thickness;

  } PS_FontInfoRec, *PS_FontInfo;
-----

----- 2.1.4
  typedef struct  PS_FontInfoRec
  {
(snip)
    FT_Fixed*   underline_position;
    FT_Fixed*   underline_thickness;

  } PS_FontInfoRec, *PS_FontInfo;
-----


 This change cause build error in xc/lib/font/freetype/ftfuncs.c likes this:


 gcc -c -g -O2 -g -ansi -pedantic -Wall -Wpointer-arith -Wstrict-prototypes 
-Wmissing-prototypes -Wmissing-declarations                      -Wredundant-decls 
-Wnested-externs -Wundef  -I. -I../../../include/fonts -I../include 
-I../../../exports/include/X11            -I../../../programs/Xserver/include 
-I/usr/include/freetype2 -I/usr/include/freetype2/include -I../../../exports/include  
-I../../.. -I../../../exports/include -I/usr/X11R6/include  -Dlinux -D__alpha__ 
-D_POSIX_C_SOURCE=199309L                           -D_POSIX_SOURCE -D_XOPEN_SOURCE 
-D_BSD_SOURCE -D_SVID_SOURCE                             -D_GNU_SOURCE           
-DFUNCPROTO=15 -DNARROWPROTO   -DGCCUSESGAS -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH   
                        -DXFreeXDGA -DXvExtension                       
-DXFree86Server                                 -DXF86VIDMODE                  
-DXvMCExtension                                                          
-DSMART_SCHEDULE                           
      -DBUILDDEBUG -DXResExtension           -DX_BYTE_ORDER=X_LITTLE_ENDIAN 
-D_XSERVER64 -DJENSEN_SUPPORT   ftfuncs.c
In file included from ftfuncs.c:48:
ft.h:73: warning: redundant redeclaration of `FreeTypeRegisterFontFileFunctions' in 
same scope
../../../include/fonts/fontproto.h:91: warning: previous declaration of 
`FreeTypeRegisterFontFileFunctions'
ftfuncs.c: In function `FreeTypeAddProperties':
ftfuncs.c:966: error: pointer value used where a floating point value was expected
ftfuncs.c:968: error: pointer value used where a floating point value was expected
make[6]: *** [ftfuncs.o] Error 1
make[6]: Leaving directory 
`/home/ishikawa/work/XFree86/4.3.0/xfree86-4.3.0/build-tree/xc-xserver-xfree86-dbg/lib/font/FreeType'



 I think better to define FontLibSharedFreeType=NO, because XFree86-dbg
does exists to debug for normal XFree86 server. Difference between
FreeType2 included in normal XFree86 (source level inclusion in freetype.a
module). and FreeType2 linked against XFree86-dbg cause trouble to debug
libXfont FreeType backend area.


 Of cause build problem with FreeType2 should resolve to next XFree86
upstream release. Because current XFree86 upstream CVS tree already
import FreeType 2.1.4 :-)



ISHIKAWA Mutsumi <[EMAIL PROTECTED]> Fri Jun  6 15:40:25 JST 2003

-- 
ISHIKAWA Mutsumi
 <[EMAIL PROTECTED]>, <[EMAIL PROTECTED]>, <[EMAIL PROTECTED]>


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to