[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ft-devel] FT_UINT_TO_POINTER & other problems with cross-compile fo
From: |
Werner LEMBERG |
Subject: |
Re: [ft-devel] FT_UINT_TO_POINTER & other problems with cross-compile for win64 |
Date: |
Fri, 12 May 2017 07:59:59 +0200 (CEST) |
> It seems that your solution to
> https://savannah.nongnu.org/bugs/index.php?50560
> is simply wrong - it turns a warning into a complete failure :-).
Thanks for testing! I've applied your patch.
> I am not sure if __int64 is specific to mingw-gcc or would it breaks
> compiling with visual studio; but here are the changes that works
> for me.
Accorting to MSDN, `__int64' exists down to VS.NET 2003, so I don't
see a problem.
> Also on another win64 issue - I am looking at another interesting
> patch for streaming in memory for FontVal (for windows). Somebody
> wanted this done, because, as you know, long is still only 32-bit on
> win64:
This I will delay until the next FreeType release, since...
> +++ include/freetype/ftsystem.h 2017-05-07 20:17:21.707763600 +0200
> @@ -330,8 +330,13 @@ FT_BEGIN_HEADER
> typedef struct FT_StreamRec_
> {
> unsigned char* base;
> +#if _WIN64
> + unsigned __int64 size;
> + unsigned __int64 pos;
> +#else
> unsigned long size;
> unsigned long pos;
> +#endif
>
> FT_StreamDesc descriptor;
> FT_StreamDesc pathname;
... I'm not happy about `#if' in ftsystem.h – this should be hidden in
the configuration header, defining a proper type. Can you work on
that?
Werner