On Tue, Jul 13, 2004 at 12:26:12AM -0500, Branden Robinson wrote: > On Mon, Jul 12, 2004 at 02:04:34AM +0200, Michael Banck wrote: > > -# define FontLibSharedFreeType NO > > > > This one causes a build failure even with the current trunk, as > > xc/lib/font/libXFont apparently does not get built on Linux and > > xc/lib/font/Freetype/fcfuncs.c needs to be updated for current > > libfreetype6. I added the #define to gnu.cf as well, is that reasonable? > > Uh, you lost me on this one. Can we break this issue out into a separate > mail. I get confused quickly when it comes to the Byzantine mess that is > font support in X.
Ok, so this is really hairy to figure out. I tried a lot of stuff on and off, so I'm not sure whether the following is completely accurate and I found it out more by empirical than methodical research: 099b_Xft_FreeType_2.1.7_build_fix.diff does not touch xc/lib/font/Freetype/ftfuncs.c although that file would need the same kind of fixes I believe. The error occurs when building the static xserver: gcc -c -ansi -pedantic -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-proto types -Wmissing-declarations -Wredundant-decls -Wnested-externs -Wundef -I. -I../.. /../include/fonts -I../include -I../../../exports/include/X11 -I../../../programs/Xserver/incl ude -I/usr/include/freetype2 -I/usr/include/freetype2/include -I../../../exports/include -I../../.. -I.. /../../exports/include -I/usr/X11R6/include -D__GNU__ -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOUR CE -DFUNCPROTO=15 -DNARROWPROTO -DGCCUSESGAS -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH -DXFreeXDGA -DXvExtension -DXFree86Server -DXF86VIDMODE -DXvMCExtension -DSMART_SCHEDULE -DBUILDDEBUG -DXResExtens ion -DX_BYTE_ORDER=X_LITTLE_ENDIAN -O0 -g ftfunc In file included from ftfuncs.c:40: /usr/include/freetype2/freetype/freetype.h:20:2: #error "`ft2build.h' hasn't been included yet!" /usr/include/freetype2/freetype/freetype.h:21:2: #error "Please always use macros to include FreeType header files." /usr/include/freetype2/freetype/freetype.h:22:2: #error "Example:" /usr/include/freetype2/freetype/freetype.h:23:2: #error " #include <ft2build.h>" /usr/include/freetype2/freetype/freetype.h:24:2: #error " #include FT_FREETYPE_H" 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' make[6]: *** [ftfuncs.o] Error 1 make[6]: Leaving directory `/home/mbanck/xfree86-4.3.0.dfsg.1.current/build-tree/xc-xserver-xfree86-dbg/l ib/font/FreeType' make[5]: *** [FreeType] Error 2 make[5]: Leaving directory `/home/mbanck/xfree86-4.3.0.dfsg.1.current/build-tree/xc-xserver-xfree86-dbg/lib/font' make[4]: *** [all] Error 2 make[4]: Leaving directory `/home/mbanck/xfree86-4.3.0.dfsg.1.current/build-tree/xc-xserver-xfree86-dbg/lib' making all in ./programs... The build goes on and later fails when linking XFree86: gcc -o XFree86 [...] ../../lib/font/libXfont.a -lfreetype dix/libxpstubs.a -lfreetype -lz -lm -Wl,-rpath-link=../../exports/lib gcc: ../../lib/font/libXfont.a: No such file or directory make[5]: *** [XFree86] Error 1 make[5]: Leaving directory `/home/mbanck/xfree86-4.3.0.dfsg.1.current/build-tree/xc-xserver-xfree86-dbg/programs/Xserver' However, grepping through a xfree86 build log on GNU/Linux, I can't really tell what makes the difference here, ftfuncs.c seems to get compiled both by the shared and static XServer on GNU/Hurd and GNU/Linux. So I'm not sure what exactly was the cause, but at some point I was quite certain that defining the above variable helped :-/ Michael