[webkit-dev] Pulling together on WebKit Mobile
Brent Fulgham
bfulgham at gmail.com
Wed Jan 16 22:21:41 PST 2008
On Jan 16, 2008, at 2:19 PM, zucker at wake3.com wrote:
> You can solve this by creating additional configurations in the same
> VS
> projects/solution. Configurations are set up to let you choose
> different
> link libraries for different targets. The different targets can
> also set
> different #defines to select CG vs Cairo, etc.
>
> Personally I don't like this so much since it is a pain to maintain
> multiple configurations, but it does solve the problem for selecting
> different libraries to link.
>
> Cheers,
> Dan
>
>> This was a non-issue for Cairo, since it was completely contained in
>> our source tree (and not externally linked against). That was less
>> than ideal though, and you still had the linking problem in the other
>> direction (with CG always being linked against).
>>
>> dave
You can link against different libraries using the Visual Studio
"#pragma comment" feature, e.g.:
#pragma comment(lib, "wininet.lib")
This works, but if you want to link against debug and other variants,
you quickly end up with a mess like:
#ifdef _DEBUG
#ifdef _UNICODE_
#pragma comment (lib, "coollibDU.lib")
#else
#pragma comment (lib, "coollibD.lib")
#endif
#else
#ifdef _UNICODE_
#pragma comment (lib, "coollibU.lib")
#else
#pragma comment (lib, "coollib.lib")
#endif
#endif
I think for us to have a viable native windows port, we need to be
able to link against a pre-built Cairo libraries.
I am just not looking forward to having to create multiple targets in
the project files, as this will involve figuring out how to pass this
along from the "build-webkit" script, etc., etc.
But can we decide on a course of action soon? I'd like to generate a
patch that gets the win32 (native) target to build soon, but I don't
want to spend too much time on a dead-end.
Thanks,
-Brent
More information about the webkit-dev
mailing list