[webkit-help] JSC: Minimal win32 Build + Some Current Bugs

Adam Roben aroben at apple.com
Wed Jan 25 11:03:48 PST 2012


On Jan 25, 2012, at 1:44 PM, Brian Barnes wrote:

> I'm working on creating a minimal win32 build, without CFLite and pthreads (without the unicode is next to impossible.)
> 
> A non-CFLite build works fine, except for: api/JSStringRefCF.cpp
> 
> This code does not account for the USE(CF) flag.  I made this correction:
> 
> JSStringRef JSStringCreateWithCFString(CFStringRef string)
> {
> 	#if !USE(CF)
> 		return(NULL);
> 	#else
> 		// original code goes here!
> 	#endif
> }
> 
> CFStringRef JSStringCopyCFString(CFAllocatorRef alloc, JSStringRef string)
> {
> 	#if !USE(CF)
> 		return(NULL);
> 	#else
> 		// original code goes here!
> 	#endif
> }
> 
> This might not be the best solution, but if you compile without CF you can't expect these functions to be workable.

I'd just wrap this entire file in #if USE(CF)/#endif. There's no reason to compile these functions at all when not using CF.

> A non-phtread works except for: heap/MachineStackMarker.cpp
> 
> Way to many corrections here to note.  Half the code in this function properly checks the USE(PTHREAD)/OS(WINDOWS), and the other have does NOT.  This could be REALLY bad as it's might be (didn't check that hard) mixing pthreads and windows threads!  This one probably really needs to be fixed.

Patrick Gansterer has been working on removing the pthreads requirement in that file as part of his work to fix <https://bugs.webkit.org/show_bug.cgi?id=68046>. Check out the bugs that one depends on for some of his work so far.

> One last one, just a reminder as I mentioned it before: keywords.table has two extra returns at the end which breaks parser.cpp.

Please file a bug about this at http://webkit.org/new-bug

-Adam



More information about the webkit-help mailing list