Qt import: Do not force the use HarfBuzz on Mac.

Configure option -harfbuzz breaks Linux build.

http://code.google.com/p/phantomjs/issues/detail?id=226
Qt import: Use a customized src.pro.

We need to exclude building SQL, TestLib, and plugins.

http://code.google.com/p/phantomjs/issues/detail?id=226
Qt import: Sync with the steps in deploy/build-helper.

http://code.google.com/p/phantomjs/issues/detail?id=226
Qt import: Don't use module include.

In the current state of our imported minimalistic Qt, some header files
are missing. Since the module include like <QtGui> just includes
everything, this leads to a preprocessor error.

The solution is to include only needed headers from particular class.

http://code.google.com/p/phantomjs/issues/detail?id=226
Qt import: use static build on Linux only.

http://code.google.com/p/phantomjs/issues/detail?id=226
Qt import: Script to build everything, for Linux and Mac OS X.

http://code.google.com/p/phantomjs/issues/detail?id=226
Qt workaround to prevent WebCoreMovieObserver confusion.

See the previous commit 30134bab5d4eb2cad76747cd69159140785d6cc3.
This is just applying disable-quicktime-video.patch.

http://code.google.com/p/phantomjs/issues/detail?id=321
Enable remote debugging.

This is just applying enable_debugger.patch.
See also https://github.com/ariya/phantomjs/pull/173.

http://code.google.com/p/phantomjs/issues/detail?id=6
Fix remote inspection to work.

This is applying fix_inspector.patch.
See also https://github.com/ariya/phantomjs/pull/173.

http://code.google.com/p/phantomjs/issues/detail?id=6
Headless and PDF printing fixes.

This is just applying headless_and_pdf_fixes.patch.
See also https://github.com/ariya/phantomjs/pull/173..
Fix file upload on Qt 4.8.

This is just applying enable_file_input_click.patch.

See the previous commit 00a8e72fb306d0cedca399425a11b862f2fb27ea.

http://code.google.com/p/phantomjs/issues/detail?id=307&q=upload
WebKit: Turn off accelerated compositing.

Compositing depends on Graphics View and/or GL-based texture mapper.
Since we don't plan to support either of them, at least for the near
future, we might as well disable compositing.

http://code.google.com/p/phantomjs/issues/detail?id=414
Qt Gui: Disable Graphics View.

Graphics View is not needed for PhantomJS.

http://code.google.com/p/phantomjs/issues/detail?id=414
Qt build: More configuration flags for Mac OS X.

This is just adopting the settings from deploy/build-mac.sh.

http://code.google.com/p/phantomjs/issues/detail?id=226
Revamp the build scripts in deploy/.

Technically only deploy/package-linux-dynamic.sh is relevant and it's
been adjusted appropriately. All other files are obsoleted with the new
build process.

http://code.google.com/p/phantomjs/issues/detail?id=226
support keep-alive in the webserver

The recent patch that brought asynchronous webserver response handling
made it impossible to have proper keep-alive support in the server.

We want the server to support keep-alive though, which is especially
useful when writing a PhantomJS script that allows one to "remote control"
PhantomJS, using the WebServer API, without flooding the TCP connections.
Also the performance might be improved.

Note: This patch reverts commit bbce8920d0a56874daba39c7d69f64e3d64c2eb8,
and resets the Mongoose code to the vanilla 3.0 version. Instead we now
support the async handling of HTTP requests using some QWaitCondition
magic.

Note: keep-alive support is optional, and disabled by default. To enable
it, use something like:

server.listen(port, {"keep-alive": true}, function(request, response) {...});

Like before, calling response.close() is crucial. Furthermore though, a
server that has keep-alive enabled *must* set a proper "Content-Length: ..."
header in it's response, otherwise clients will not be able to know when
the response has finished.

fix memory leaks in webserver

ISSUE: 416 (http://code.google.com/p/phantomjs/issues/detail?id=416)
WebKit: Support multiple console.log arguments.

http://code.google.com/p/phantomjs/issues/detail?id=36
Build scripts clean up.

The contents of deploy/build* scripts have been merged and consolidated
into ./build.sh as part of the Qt import workflow.

http://code.google.com/p/phantomjs/issues/detail?id=226
Do not use module include.

For the same reason like in previous commit 685c5f5725: with our
minimalistic copy of Qt, the module header might be incomplete.

http://code.google.com/p/phantomjs/issues/detail?id=226
Merge remote-tracking branch 'upstream/master'