
webkit在win32下的编译规则
文章平均质量分 90
很多人不清楚webkit的编译原理,导致编译出错不知道原因,更不知道如何解决。为了帮助更多的人了解webkit编译,我这几天详细看了一下webkit在windows下的编译规则,写下了这些类似于总结的文章。
chief1985
好好学习
展开
-
webkit在win32下的编译规则(九)
在webkit在win32下的编译规则(七)中,曾经说到要专门介绍js binding这部分的,但后面逐渐忘记了,最近有网友提起,特加入js binding这部分的介绍。 首先来说是js engine,js engine是一个解释器。解释器比较直观的就是命令行(cmd.exe)原创 2011-09-12 23:30:51 · 10165 阅读 · 3 评论 -
webkit在win32下的编译规则(八)
HTMLElementFactory.cpp和HTMLNames.cpp是由如下规则生成的: ifdef HTML_FLAGS HTMLElementFactory.cpp HTMLNames.cpp : dom/make_names.pl html/HTMLTagNames.in html/HTMLAttributeNames.in perl -I $(WebCore)/bindings/scripts $û,在浏览器打开就可以看见一个世界地图。 WMLElementF原创 2011-03-23 09:23:00 · 7378 阅读 · 5 评论 -
webkit在win32下的编译规则(七)
首先看$(JS_DOM_HEADERS),这些文件都是以JS开头的,对其做处理的是如下规则: JS%.h : %.idl $(JS_BINDINGS_SCRIPTS) $(call generator_script, $(JS_BINDINGS_SCRIPTS)) $(IDL_COMMON_ARGS) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --generator JS $ CSSGram原创 2011-03-22 09:29:00 · 6404 阅读 · 3 评论 -
webkit在win32下的编译规则(六)
WebCore Folder下面的有3个工程:QTMovieWin,WebCore,WebCoreGenerated,编译的顺序是:WebCoreGenerated-》QTMovieWin-》QTMovieWin。 首先来看WebCoreGenerated这个工程,这个工程的NMake Build Comand Line如下: %SystemDrive%/cygwin/bin/which.exe bash if errorlevel 1 set PATH=%SystemDrive%/cygwin/bin;原创 2011-03-22 09:27:00 · 5785 阅读 · 0 评论 -
webkit在win32下的编译规则(五)
接下来看testapi这个工程,这个工程的编译设置基本与javascriptcore相同,最终生成testapi.exe。testapi.exe是一个测试javascript导出api的工程,这个工程就testapi.c和testapi.js两个文件,如下图: 虽然只有两个文件,却可以从这两个文件中学到如何使用javascriptcore这个js引擎,例如如何向js引擎注入对象和函数。可能很多人看了testapi.js这个文件函数会产生一个疑问,为什么不用window对象?对于js引擎而言,根本不存原创 2011-03-01 12:32:00 · 2734 阅读 · 2 评论 -
webkit在win32下的编译规则(四)
接下来看JavaScriptCore这个工程,这个工程继承的project property sheet如下: ../../../../WebKitLibraries/win/tools/vsprops/FeatureDefinesCairo.vsprops ../../../../WebKitLibraries/win/tools/vsprops/common.vsprops ../../../../WebKitLibraries/win/tools/vsprops/debug.vspro原创 2011-03-01 12:31:00 · 5055 阅读 · 0 评论 -
webkit在win32下的编译规则(三)
首先来看WTF这个project,这个project的Pre-build event如下: 1: REM Do not edit from the Visual Studio IDE! Customize via a $(ProjectName)PreBuild.cmd file. 2: if not exist "$(ProjectDir)$(ProjectName)PreBuild.cmd" exit /b 3:原创 2011-02-14 19:37:00 · 5001 阅读 · 0 评论 -
webkit在win32下的编译规则(二)
现在的webkit分为4个Floder:Javascript Folder,Tools,WebCore Folder,Webkit2 Folder,WebkitCom Folder,这5个目录的编译顺序基本是:Javascript Folder-》WebCore Folder-》WebkitCom Folder-》Webkit2 Folder-》Tools(有些子工程的顺序并不是这样的),下面就以这几个目录为单位来说明webkit的编译规则。 1. Javascript Folder 这个目录下有原创 2011-01-07 20:46:00 · 7931 阅读 · 5 评论 -
webkit在win32下的编译规则
最近有人在windows 7下的webkit编译不过去,问我该怎么解决。我看了一下,主要是SVGAnimationElement.cpp等文件编译不过去,这里面使用了开启svg后的一些枚举变量,但webkit在编译时生成的WebKitBuild/include/WebCore/CSSPropertyNames.h文件里面并没有生成这些枚举变量,我检查一些编译选项,配置都是OK的,我又看了一下webkit的编译规则,发现CSSPropertyNames.h的生成是依赖CSSPropertyNames.in等文原创 2010-12-27 22:25:00 · 10360 阅读 · 7 评论