2. Where should I start from? - WebKit porting to Mona OS
Okay, let's check the output.
- 7.0M WebKit/WebKitBuild/Release/JavaScriptCore/release/libjscore.a
- 56MB WebKit/WebKitBuild/Release/WebCore/release/libwebcore.a
As someone said, I think it's better to start from building JavaScriptCore for some reasons.
- JavaScriptCore is much smaller than WebCore.
- Since JavaScriptCore is just JavaScript language engine, it has fewer dependencies to other libraries.
Start Point
Modified JavaScriptCore/Makefile to use Mingw.
CC = /usr/bin/i586-mingw32msvc-gcc CXX = /usr/bin/i586-mingw32msvc-g++
Removed following unsupported options.
- -fPic
- -pthread
Let's "make".
A weird error.
../../../Source/JavaScriptCore/wtf/Vector.h: In member function ‘void WTF::Vector<T, inlineCapacity>::reserveCapacity(size_t) [with T = JSC::Yarr::ByteCompiler::ParenthesesStackEntry, unsigned int inlineCapacity = 0u]’: ../../../Source/JavaScriptCore/wtf/Vector.h:887: Warning: visibility attribute not supported in this configuration; ignored
TypeOperations::move(oldBuffer, oldEnd, begin());
m_buffer.deallocateBuffer(oldBuffer); // <--- Here!
Can I ignore it?. I'm not sure.
But just ignore for now. Removed -Werror option (Dangerous).
Threads
The next error is on Threads.
{standard input}: Assembler messages: {standard input}:265: Error: suffix or operands invalid for `cmpxchg' make: *** [obj/release/MainThreadQt.o] Error 1
As the file name is suggested, we should write our own thread related code.