[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ft] freetype2 and Win64
From: |
NightStrike |
Subject: |
[ft] freetype2 and Win64 |
Date: |
Wed, 2 Sep 2009 18:27:22 -0400 |
While compiling freetype2 for Win64 to meet a VLC dependency, I
encounter these warnings:
configure: WARNING: unrecognized options: --enable-msw,
--disable-dependency-tracking
configure: WARNING: unrecognized options: --enable-msw,
--disable-dependency-tracking
In file included from
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cff/cff.c:26:0:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cff/cffgload.c:
In function ‘cff_decoder_parse_charstrings’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cff/cffgload.c:866:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cff/cffgload.c:867:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cff/cffgload.c:868:12:
warning: cast from pointer to integer of different size
In file included from
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdf.c:30:0:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:
In function ‘bdf_create_property’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:1006:35:
warning: cast to pointer from integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:
In function ‘bdf_get_property’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:1031:14:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:
In function ‘_bdf_add_property’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:1276:26:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:1338:14:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:1375:28:
warning: cast to pointer from integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:
In function ‘_bdf_parse_start’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:2057:44:
warning: cast to pointer from integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:
In function ‘bdf_get_font_property’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/bdf/bdflib.c:2475:33:
warning: cast from pointer to integer of different size
In file included from
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcache.c:25:0:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftccmap.c:
In function ‘FTC_CMapCache_Lookup’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftccmap.c:371:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftccmap.c:371:12:
warning: cast from pointer to integer of different size
In file included from
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcache.c:29:0:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:
In function ‘FTC_ImageCache_Lookup’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:354:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:354:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:
In function ‘FTC_ImageCache_LookupScaler’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:416:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:416:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:
In function ‘FTC_SBitCache_Lookup’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:677:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:677:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:
In function ‘FTC_SBitCache_LookupScaler’:
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:740:12:
warning: cast from pointer to integer of different size
/home/nightstrike/work/vlc/extras/contrib/src/freetype2/src/cache/ftcbasic.c:740:12:
warning: cast from pointer to integer of different size
rmdir:
/home/nightstrike/work/vlc/extras/contrib/include/freetype2/freetype/internal:
No such file or directory
All of these are related to castings that assume that pointers are the
size of long. On this platform, they are not. I looked into some of
them, and I see for instance this:
/*************************************************************************/
/* */
/* <Type> */
/* FT_Fixed */
/* */
/* <Description> */
/* This type is used to store 16.16 fixed float values, like scaling */
/* values or matrix coefficients. */
/* */
typedef signed long FT_Fixed;
Well, that's an easy fix. Just change signed long to intptr_t, and
problems are solved.
However, the comments in the typedef say that FT_Fixed is expected to
be 16 bits by 16 bits. This isn't the cast even on a linux 64 system,
where long is 32.32. Further, why is a type like this being used to
store pointers? Surely a pointer isn't a matrix coefficient.
I want to be able to properly port this, but it seems like this isn't
as trivial as just replacing a bunch of long's with intptr_t's.
Where should we go from here?