[webkit-dev] Pulling together on WebKit Mobile

David Hyatt hyatt at apple.com
Wed Jan 16 14:12:05 PST 2008


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

On Jan 16, 2008, at 4:10 PM, Adam Roben wrote:

> On Jan 16, 2008, at 5:04 PM, David Hyatt wrote:
>
>> This is how we did it when we (briefly) had CG and Cairo compiling  
>> simultaneously.  The problem with it though is that we had a copy  
>> of Cairo in our source tree and ended up having to hack the Cairo  
>> source to put #if PLATFORM(CAIRO) around those files.  If Cairo is  
>> going to be brought in externally, that could be an issue.
>
> And in general, #ifdefing the contents of source files doesn't solve  
> the problem of choosing which libs to link against.
>
> -Adam
>
>> On Jan 16, 2008, at 3:58 PM, zucker at wake3.com wrote:
>>
>>> I like the idea of just wrapping those files with #if PLATFORM(CG).
>>>
>>> It's slightly messy, but it works and it simplifies managing a  
>>> complex VS
>>> project file.
>>>
>>> Cheers,
>>> Dan
>>>
>>> ---------------------------- Original Message  
>>> ----------------------------
>>> Subject: Fwd: [webkit-dev] Pulling together on WebKit Mobile
>>> Date:    Wed, January 16, 2008 1:54 pm
>>> --------------------------------------------------------------------------
>>>
>>> On 16/01/2008, at 1:28 PM, Brent Fulgham wrote:
>>>
>>>> I took Dan's advice, and modified my config.h as follows:
>>>>
>>>> #if PLATFORM(WIN)
>>>> #define WTF_USE_JAVASCRIPTCORE_BINDINGS 1
>>>> #define WTF_USE_NPOBJECT 1
>>>> #undef WTF_PLATFORM_CG
>>>> #define WTF_PLATFORM_CAIRO 1
>>>> #undef WTF_USE_CFNETWORK
>>>> #define WTF_USE_WININET 1
>>>> #undef WTF_PLATFORM_CF
>>>> #define WTF_USE_PTHREADS 0
>>>> #endif
>>>>
>>>> <aside>We should probably come up with a new name for a 'native'
>>>> windows build, such as used by Adobe/AIR, Windows mobile, and a
>>>> true native Windows build.</aside>
>>>>
>>>> I also modified Visual Studio's environment to find the Cairo
>>>> headers and link libraries.
>>>>
>>>> I then started "build-webkit" and went and did other things for
>>>> about an hour.  The build produces quite a few errors, many of
>>>> which are just CG-isms that I conditionalized away.  In a few
>>>> cases, I resurrected the old Cairo backend code, in others I just
>>>> marked them as 'notImplemented()'.
>>>>
>>>> At this point, the remaining errors are due to the Visual Studio
>>>> project compiling the CG modules.  I'm not sure how best to
>>>> approach this:
>>>>
>>>> 1.  Create a brand new project for non-CG Windows
>>>> 2.  Create new build targets in the existing solution for the non-
>>>> CG target.
>>>> 3.  ?
>>>
>>> Possibly worth putting #if PLATFORM(CG) around SG paltform files,  
>>> but
>>> i also can't think of a nice way to work around this -- does anyone
>>> know if you can make VS recognise some files as being for one target
>>> only?
>>>
>>> --Oliver
>>>
>>>>
>>>>
>>>> -Brent
>>>> _______________________________________________
>>>> webkit-dev mailing list
>>>> webkit-dev at lists.webkit.org
>>>> http://lists.webkit.org/mailman/listinfo/webkit-dev
>>>
>>> _______________________________________________
>>> webkit-dev mailing list
>>> webkit-dev at lists.webkit.org
>>> http://lists.webkit.org/mailman/listinfo/webkit-dev
>>> <untitled-2.html>_______________________________________________
>>> webkit-dev mailing list
>>> webkit-dev at lists.webkit.org
>>> http://lists.webkit.org/mailman/listinfo/webkit-dev
>>
>> _______________________________________________
>> webkit-dev mailing list
>> webkit-dev at lists.webkit.org
>> http://lists.webkit.org/mailman/listinfo/webkit-dev
>



More information about the webkit-dev mailing list