freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft-devel] FreeType version 2.2.1 released


From: James Cloos
Subject: Re: [ft-devel] FreeType version 2.2.1 released
Date: Tue, 16 May 2006 18:54:30 -0400
User-agent: Gnus/5.110004 (No Gnus v0.4) Emacs/23.0.0 (gnu/linux)

>>>>> "Matthias" == Matthias Clasen <address@hidden> writes:

Matthias> So I wondered if anybody has a libXfont patch. 
Matthias> There is none on the list of rogue clients...

I spent some time on it today (after seeing the bug report on
xorg-team, and after having libXfont builds fail on my laptop).

There was a reference to a patch posted here back in Feb (cf:

http://www.mail-archive.com/address@hidden/msg01062.html
https://www.codeblog.org/blog/mpsuzuki/20060211.html

for the mail and MP's patch.)

With that patch, there are still some issues in ftfuncs.c and a
trivial issue in ftsystem.c.

Adding an #ifdef HAVE_FT_INTERNAL_HEADERS around 
the #include FT_INTERNAL_DEBUG_H in ftsystem.c is enough
for that one.

ftfuncs takes a bit more.

It wants to use these macros from an internal ft header:

#define FT_PIX_FLOOR( x )     ( (x) & ~63 )
#define FT_PIX_ROUND( x )     FT_PIX_FLOOR( (x) + 32 )

and a couple others that need to use . rather than -> to match the
rest of MP's patch; replace:

       w = FT_REQUEST_WIDTH ( req );
       h = FT_REQUEST_HEIGHT( req );

with:

        w = req.horiResolution
            ? ( req.width * req.horiResolution + 36 ) / 72
            : req.width;

        h = req.vertResolution
            ? ( req.height * req.vertResolution + 36 ) / 72
            : req.height;


(NB that ftfuncs already has these macros:

#define FLOOR64(x) ((x) & -64)
#define CEIL64(x) (((x) + 64 - 1) & -64)

so adding ROUND64 there will replace the need for the FT_PIX_ROUND
macro.)

That much leaves only these errors:

ftfuncs.c: In function `FreeTypeOpenInstance':
ftfuncs.c:551: error: label at end of compound statement
ftfuncs.c: In function `tt_get_metrics':
ftfuncs.c:877: error: `TT_LongMetrics' undeclared (first use in this function)
ftfuncs.c:877: error: (Each undeclared identifier is reported only once
ftfuncs.c:877: error: for each function it appears in.)
ftfuncs.c:877: error: syntax error before "longs_m"
ftfuncs.c:886: error: `longs_m' undeclared (first use in this function)
ftfuncs.c:886: error: syntax error before "header"
ftfuncs.c:891: error: `TT_ShortMetrics' undeclared (first use in this function)
ftfuncs.c:891: error: syntax error before ')' token
ftfuncs.c:892: error: syntax error before "header"
ftfuncs.c: In function `ft_get_very_lazy_bbox':
ftfuncs.c:907: error: `TT_Face' undeclared (first use in this function)
ftfuncs.c:907: error: syntax error before "ttface"
ftfuncs.c:914: error: `ttface' undeclared (first use in this function)
ftfuncs.c: In function `FT_Do_SBit_Metrics':
ftfuncs.c:976: error: `SFNT_Service' undeclared (first use in this function)
ftfuncs.c:976: error: syntax error before "sfnt"
ftfuncs.c:977: error: `TT_Face' undeclared (first use in this function)
ftfuncs.c:980: error: `TT_SBit_Strike' undeclared (first use in this function)
ftfuncs.c:980: error: syntax error before "strike"
ftfuncs.c:981: error: `TT_SBit_Range' undeclared (first use in this function)
ftfuncs.c:982: error: `TT_SBit_MetricsRec' undeclared (first use in this 
function)
ftfuncs.c:993: error: `face' undeclared (first use in this function)
ftfuncs.c:993: error: syntax error before "ft_face"
ftfuncs.c:994: error: `sfnt' undeclared (first use in this function)
ftfuncs.c:994: error: syntax error before "face"
ftfuncs.c:1000: error: `range' undeclared (first use in this function)
ftfuncs.c:1000: error: `strike' undeclared (first use in this function)
ftfuncs.c:1017: warning: implicit declaration of function `FT_STREAM_POS'
ftfuncs.c:1017: warning: nested extern declaration of `FT_STREAM_POS'
ftfuncs.c:1020: warning: implicit declaration of function `FT_STREAM_SEEK'
ftfuncs.c:1020: warning: nested extern declaration of `FT_STREAM_SEEK'
ftfuncs.c:1023: error: `elem_metrics' undeclared (first use in this function)

I've not yet researched the fixes for those.

ftfuncs uses code from freetype itself (from:
freetype-*/src/truetype/ttgload.c) and so it is reasonable
to just grab whatever more is needed for those functions.

-JimC
-- 
James H. Cloos, Jr. <address@hidden>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]