RFR(M): 8057538: Build the freetype library during configure on Windows

Erik Joelsson erik.joelsson at oracle.com
Fri Sep 5 13:35:01 UTC 2014

On 2014-09-05 14:59, Volker Simonis wrote:
> On Fri, Sep 5, 2014 at 12:31 PM, Erik Joelsson <erik.joelsson at oracle.com> wrote:
>> Hello Volker,
>> This is certainly an interesting proposition.
>> The grep for "SDKs" as test wasn't enough for Visual Studio 2010 as we have
>> an SDK directory then too, containing "v7.0A". I changed it to the below to
>> make it work for me, but I'm not sure it's a good enough test. Magnus will
>> likely have an opinion on this.
>> if $ECHO "$VS_PATH" | grep -q 'Microsoft Visual Studio 10.0'; then
>>    freetype_platform_toolset=""
>> elif $ECHO "$VS_PATH" | grep -q 'SDKs'; then
>>    freetype_platform_toolset="/p:PlatformToolset=Windows7.1SDK"
>> fi
> I see. This seems to be much trickier than I thought. Unfortunately
> 'Microsoft Visual Studio 10.0' is also in the path if we have a
> SDK-only installation:)
> So if Magnus doesn't come up with a better idea maybe we have to
> remember the toolset in a variable right during the detection process?
> But apart from that - did it work for you?
> Thank you and best regards,
> Volker
It's probably better to get the value from our toolchain detecting code. 
Parsing the path will not cover cases where it's installed in non 
standard places. Not sure what kind of strings are acceptable for that 
parameter to msbuild or how you could extract what you have? Also, 
instead of guessing where msbuild is, I think you will find it if you 
have VS_PATH as your path. Maybe just add a AC_PATH_PROG(msbuild) (or 
whichever variant we use) during the toolchain setup?

Other than that it seemed to work, but it did uncover another bug 
related to freetype. In Copy-java.desktop.gmk, an explicit $(CP) is used 
to copy the file instead of the standard macro $(install-file). The 
build failed for me because the target directory didn't exist yet.


More information about the build-dev mailing list