|
2 | 2 |
|
3 | 3 | WebKit is a cross-platform web browser engine. On iOS and macOS, it powers Safari, Mail, iBooks, and many other applications. |
4 | 4 |
|
5 | | -## Feature Status |
| 5 | +# install |
6 | 6 |
|
7 | | -Visit [WebKit Feature Status](https://webkit.org/status/) page to see which Web API has been implemented, in development, or under consideration. |
8 | | - |
9 | | -## Trying the Latest |
10 | | - |
11 | | -On macOS, [download Safari Technology Preview](https://webkit.org/downloads/) to test the latest version of WebKit. On Linux, download [Epiphany Technology Preview](https://webkitgtk.org/epiphany-tech-preview). On Windows, you'll have to build it yourself. |
12 | | - |
13 | | -## Reporting Bugs |
14 | | - |
15 | | -1. [Search WebKit Bugzilla](https://bugs.webkit.org/query.cgi?format=specific&product=WebKit) to see if there is an existing report for the bug you've encountered. |
16 | | -2. [Create a Bugzilla account](https://bugs.webkit.org/createaccount.cgi) to to report bugs (and to comment on them) if you haven't done so already. |
17 | | -3. File a bug in accordance with [our guidelines](https://webkit.org/bug-report-guidelines/). |
18 | | - |
19 | | -Once your bug is filed, you will receive email when it is updated at each stage in the [bug life cycle](https://webkit.org/bug-life-cycle). After the bug is considered fixed, you may be asked to download the [latest nightly](https://webkit.org/nightly) and confirm that the fix works for you. |
20 | | - |
21 | | -## Getting the Code |
22 | | - |
23 | | -On Windows, follow the [instructions on our website](https://webkit.org/webkit-on-windows/). |
24 | | - |
25 | | -### Cloning the Git SVN Repository |
26 | | - |
27 | | -Run the following command to clone WebKit's Git SVN repository: |
28 | | - |
29 | | -``` |
30 | | -git clone git@github.com:WebKit/WebKit.git WebKit |
31 | | -``` |
32 | | - |
33 | | -or |
34 | | - |
35 | | -``` |
36 | | -git clone https://github.com/WebKit/WebKit.git WebKit |
37 | | -``` |
38 | | - |
39 | | -If you want to be able to track Subversion revision from your git checkout, you can run the following command to do so: |
40 | | - |
41 | | -``` |
42 | | -Tools/Scripts/git-webkit setup-git-svn |
43 | | -``` |
44 | | - |
45 | | -For information about this, and other aspects of using Git with WebKit, read [the wiki page](https://trac.webkit.org/wiki/UsingGitWithWebKit). |
46 | | - |
47 | | -### Checking out the Subversion Repository |
48 | | - |
49 | | -If you don't want to use Git, run the following command to check out WebKit's Subversion repository: |
50 | | - |
51 | | -``` |
52 | | -svn checkout https://svn.webkit.org/repository/webkit/trunk WebKit |
53 | | -``` |
54 | | - |
55 | | -## Building WebKit |
56 | | - |
57 | | -### Building macOS Port |
58 | | - |
59 | | -Install Xcode and its command line tools if you haven't done so already: |
60 | | - |
61 | | -1. **Install Xcode** Get Xcode from https://developer.apple.com/downloads. To build WebKit for OS X, Xcode 5.1.1 or later is required. To build WebKit for iOS Simulator, Xcode 7 or later is required. |
62 | | -2. **Install the Xcode Command Line Tools** In Terminal, run the command: `xcode-select --install` |
63 | | - |
64 | | -Run the following command to build a debug build with debugging symbols and assertions: |
65 | | - |
66 | | -``` |
67 | | -Tools/Scripts/build-webkit --debug |
68 | | -``` |
69 | | - |
70 | | -For performance testing, and other purposes, use `--release` instead. |
71 | | - |
72 | | -### Using Xcode |
73 | | - |
74 | | -You can open `WebKit.xcworkspace` to build and debug WebKit within Xcode. |
75 | | - |
76 | | -If you don't use a custom build location in Xcode preferences, you have to update the workspace settings to use `WebKitBuild` directory. In menu bar, choose File > Workspace Settings, then click the Advanced button, select "Custom", "Relative to Workspace", and enter `WebKitBuild` for both Products and Intermediates. |
77 | | - |
78 | | -### Embedded Builds |
79 | | - |
80 | | -iOS, tvOS and watchOS are all considered embedded builds. The first time after you install a new Xcode, you will need to run: |
81 | | - |
82 | | -``` |
83 | | -sudo Tools/Scripts/configure-xcode-for-embedded-development |
84 | | -``` |
85 | | - |
86 | | -Without this step, you will see the error message: "`target specifies product type ‘com.apple.product-type.tool’, but there’s no such product type for the ‘iphonesimulator’ platform.`" when building target `JSCLLIntOffsetsExtractor` of project `JavaScriptCore`. |
87 | | - |
88 | | -Run the following command to build a debug build with debugging symbols and assertions for embededded simulators: |
89 | | - |
90 | | -``` |
91 | | -Tools/Scripts/build-webkit --debug --<platform>-simulator |
92 | | -``` |
93 | | - |
94 | | -or embedded devices: |
95 | | -``` |
96 | | -Tools/Scripts/build-webkit --debug --<platform>-device |
97 | | -``` |
98 | | - |
99 | | -where `platform` is `ios`, `tvos` or `watchos`. |
100 | | - |
101 | | -### Building the GTK+ Port |
102 | | - |
103 | | -For production builds: |
104 | | - |
105 | | -``` |
106 | | -cmake -DPORT=GTK -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja |
107 | | -ninja |
108 | | -sudo ninja install |
109 | 7 | ``` |
| 8 | +sudo apt install libicu-dev python ruby bison flex cmake build-essential ninja-build git gperf |
110 | 9 |
|
111 | | -For development builds: |
| 10 | +git clone git://git.webkit.org/WebKit.git |
112 | 11 |
|
113 | | -``` |
114 | | -Tools/gtk/install-dependencies |
115 | | -Tools/Scripts/update-webkitgtk-libs |
116 | | -Tools/Scripts/build-webkit --gtk --debug |
| 12 | +Tools/Scripts/build-webkit --jsc-only |
117 | 13 | ``` |
118 | 14 |
|
119 | | -For more information on building WebKitGTK+, see the [wiki page](https://trac.webkit.org/wiki/BuildingGtk). |
120 | 15 |
|
121 | | -### Building the WPE Port |
122 | | - |
123 | | -For production builds: |
124 | | - |
125 | | -``` |
126 | | -cmake -DPORT=WPE -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja |
127 | | -ninja |
128 | | -sudo ninja install |
129 | | -``` |
130 | | - |
131 | | -For development builds: |
| 16 | +Ref: |
132 | 17 |
|
133 | 18 | ``` |
134 | | -Tools/wpe/install-dependencies |
135 | | -Tools/Scripts/update-webkitwpe-libs |
136 | | -Tools/Scripts/build-webkit --wpe --debug |
| 19 | +https://constellation.slowstart.org/blog/2016/05/02/how-to-build-javascriptcore-on-your-machine/ |
137 | 20 | ``` |
138 | | - |
139 | | -### Building Windows Port |
140 | | - |
141 | | -For building WebKit on Windows, see the [wiki page](https://webkit.org/webkit-on-windows/). |
142 | | - |
143 | | -## Running WebKit |
144 | | - |
145 | | -### With Safari and Other macOS Applications |
146 | | - |
147 | | -Run the following command to launch Safari with your local build of WebKit: |
148 | | - |
149 | | -``` |
150 | | -Tools/Scripts/run-safari --debug |
151 | | -``` |
152 | | - |
153 | | -The `run-safari` script sets the `DYLD_FRAMEWORK_PATH` environment variable to point to your build products, and then launches `/Applications/Safari.app`. `DYLD_FRAMEWORK_PATH` tells the system loader to prefer your build products over the frameworks installed in `/System/Library/Frameworks`. |
154 | | - |
155 | | -To run other applications with your local build of WebKit, run the following command: |
156 | | - |
157 | | -``` |
158 | | -Tools/Scripts/run-webkit-app <application-path> |
159 | | -``` |
160 | | - |
161 | | -### iOS Simulator |
162 | | - |
163 | | -Run the following command to launch iOS simulator with your local build of WebKit: |
164 | | - |
165 | | -``` |
166 | | -run-safari --debug --ios-simulator |
167 | | -``` |
168 | | - |
169 | | -In both cases, if you have built release builds instead, use `--release` instead of `--debug`. |
170 | | - |
171 | | -### Linux Ports |
172 | | - |
173 | | -If you have a development build, you can use the run-minibrowser script, e.g.: |
174 | | - |
175 | | -``` |
176 | | -run-minibrowser --debug --wpe |
177 | | -``` |
178 | | - |
179 | | -Pass one of `--gtk`, `--jsc-only`, or `--wpe` to indicate the port to use. |
180 | | - |
181 | | -## Contribute |
182 | | - |
183 | | -Congratulations! You’re up and running. Now you can begin coding in WebKit and contribute your fixes and new features to the project. For details on submitting your code to the project, read [Contributing Code](https://webkit.org/contributing-code/). |
184 | | - |
0 commit comments