Merge 163032 - [GTK] [CMake] Fix the build after r162835
https://bugs.webkit.org/show_bug.cgi?id=127753

Reviewed by Gustavo Noronha Silva.

* CMakeLists.txt: Add support for using the prefix header (GCC / clang only for now)
when WebKit2_USE_PREFIX_HEADER is set to true.
* PlatformGTK.cmake: Set WebKit2_USE_PREFIX_HEADER support and no longer process some message.in files.
* WebKit2Prefix.h: Add support for the CMake GTK+ build.


Conflicts:
	Source/WebKit2/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168692 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 163114 - [GTK] [CMake] Add a "make dist" target
https://bugs.webkit.org/show_bug.cgi?id=116378

Reviewed by Gustavo Noronha Silva.

.:

* Source/PlatformGTK.cmake: A CMake support for executing the make-dist
script and then turning the tarfile into a LZMA compressed file.

Source/WebCore:

* CMakeLists.txt: Don't build WebKitVersion.h for WebKitGTK+. We don't use it
and we don't want to distribute the dependency.

Tools:

Added a script that reads a manifest file an produces a tarball. Also add
the manifest.

* gtk/make-dist.py: Added.
* gtk/manifest.txt: Added.


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168693 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 163155 - [GTK] [CMake] Add support for building against GTK+ 2
https://bugs.webkit.org/show_bug.cgi?id=127959

Reviewed by Anders Carlsson.

.:

* Source/cmake/OptionsGTK.cmake: Add a new option to use GTK 2 and make a variable holding the
library API version. When using GTK 2 do not build WebKit 2.

Source/JavaScriptCore:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebCore:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebKit:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebKit2:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Tools:

* DumpRenderTree/PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.
* GtkLauncher/CMakeLists.txt: Ditto.
* ImageDiff/PlatformGTK.cmake: Ditto.
* TestWebKitAPI/Tests/WebKitGtk/CMakeLists.txt: Ditto.


Conflicts:
	ChangeLog
	Source/JavaScriptCore/ChangeLog
	Source/WebCore/ChangeLog
	Source/WebKit/ChangeLog
	Source/WebKit2/ChangeLog
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168695 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 163240 - Unreviewed. Fixed GTK+ CMake build after r162922.

* PlatformGTK.cmake: Removed SoupURIUtils.cpp from the
compilation.


Conflicts:
	Source/WebCore/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168696 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 163339 - [GTK][CMake] Enable SUBPIXEL_LAYOUT in FeatureDefines.h like EFL does
https://bugs.webkit.org/show_bug.cgi?id=128136

Reviewed by Martin Robinson.

* wtf/FeatureDefines.h: enable SUBPIXEL_LAYOUT if it's not set, for GTK+.


Conflicts:
	Source/WTF/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168697 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 163379 - [CMAKE] Remove workaround for GCC 4.6
https://bugs.webkit.org/show_bug.cgi?id=128176

Reviewed by Csaba Osztrogonác.

Since r162126, WebKit requires at least 4.7.

* CMakeLists.txt:


Conflicts:
	Source/WebCore/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168698 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164076 - [GTK][CMake] Generate GObject DOM bindings .symbols files
https://bugs.webkit.org/show_bug.cgi?id=126210

Reviewed by Martin Robinson.

.:

* Source/PlatformGTK.cmake: add checking DOM bindings API as a dependency
for documentation generation.

Source/WebCore:

No new tests. Build change only.

* CMakeLists.txt: list Quota module files and IDLs even if the feature
is disabled, for GTK, since we rely on that for our DOM bindings.
* PlatformGTK.cmake: add a new target to check for DOM symbols API by
running the new python script.
* bindings/gobject/GNUmakefile.am: call the new python script instead
of using a custom rule.

Tools:

* gtk/check-gdom-symbols: Added. Checks symbols compatibility.
(should_update_symbols_file):


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168699 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164090 - [GTK] [CMake] JavaScriptCore crashes in JSC::eval
https://bugs.webkit.org/show_bug.cgi?id=128434

Extend a fix for EFL to all ports that use GCC. Also include further fixes
that were applied only to the autotools build.

Reviewed by Gyuyoung Kim.

* Source/cmake/OptionsCommon.cmake: Add -fno-omit-frame-pointer to all ports as well
as -fno-tree-dce, which is necessary for GTK+.
* Source/cmake/OptionsEfl.cmake: The GCC flag additions are now in the common options file.


Conflicts:
	ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168700 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164257 - [GTK] [CMake] JavaScriptCore crashes in JSC::eval
https://bugs.webkit.org/show_bug.cgi?id=128434

Reviewed by Anders Carlsson.

* Source/cmake/OptionsGTK.cmake: Add -fno-omit-frame-pointer to the GTK+ CMake
port as well as -fno-tree-dce, like it is used in the autotools build.


Conflicts:
	ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168701 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164559 - [GTK][CMake] Many plugin tests fail when running WebKit1 layout tests
https://bugs.webkit.org/show_bug.cgi?id=129191

Reviewed by Anders Carlsson.

* DumpRenderTree/PlatformGTK.cmake: Properly specify the library build directory
for the GTK+ DumpRenderTree build. We could manually construct this path, but the
name of the directory is "lib" and not "libs". Instead we should use the CMake
variable specifically assigned to this task.


Conflicts:
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168702 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164586 - [CMake] Get rid of "FIXME: The Blackberry port ..." from WebCore/CmakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=129152

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-02-24
Reviewed by Gyuyoung Kim.

* CMakeLists.txt:


Conflicts:
	Source/WebCore/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168703 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164979 - [cmake] *Names.cpp file should be regenerated after touching StaticString.pm
https://bugs.webkit.org/show_bug.cgi?id=129031

Patch by Jozsef Berta <jberta.u-szeged@partner.samsung.com> on 2014-03-03
Reviewed by Csaba Osztrogonác.

.:

* Source/cmake/WebKitMacros.cmake: Added a call for make_names.pm dependencies in GENERATE_FONT_NAMES and GENERATE_DOM_NAMES macros.

Source/WebCore:

* CMakeLists.txt: Added make_names.pl dependencies: bindings/scripts/Hasher.pm and bindings/scripts/StaticString.pm


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168704 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 165058 - [GTK][CMake] ENABLE_NAVIGATOR_CONTENT_UTILS is mistakenly enabled for the CMake build
https://bugs.webkit.org/show_bug.cgi?id=129502

Reviewed by Carlos Garcia Campos.

* Source/cmake/OptionsGTK.cmake: Disable the option for GTK+.


Conflicts:
	ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168705 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 165111 - [GTK][CMake] build-webkit should rerun cmake if the Makefile is missing
https://bugs.webkit.org/show_bug.cgi?id=129380

Reviewed by Philippe Normand.

* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject): Check for the existence of the Makefile before
skipping CMake execution.


Conflicts:
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168706 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164560 - [GTK] generate-gtkdoc should use argparse
https://bugs.webkit.org/show_bug.cgi?id=128418

Reviewed by Carlos Garcia Campos.

* gtk/generate-gtkdoc: Get all arguments from argparse, pass then as parameters
to all functions, and guard the main routine with a __name__ == __main__ check.


Conflicts:
	Tools/ChangeLog
	Tools/Scripts/webkitdirs.pm

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168707 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164585 - Extract common parts from jhbuildrc files.
https://bugs.webkit.org/show_bug.cgi?id=125986

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-02-24
Reviewed by Csaba Osztrogonác.

Co-authored with Peter Szanka <h868064@stud.u-szeged.hu>.

* Scripts/run-gtk-tests:
(TestRunner._setup_testing_environment):
* efl/common.py: Removed.
* efl/jhbuildrc:
* gtk/check-gdom-symbols:
* gtk/common.py:
(binary_build_path):
(get_build_path):
* gtk/find-make-dist-errors:
(get_missing_headers):
* gtk/generate-gtkdoc:
(get_webkit2_options):
(get_webkit1_options.src_path):
(get_webkit1_options):
(get_webkitdom_options.src_path):
(get_webkitdom_options):
* gtk/generate-inspector-gresource-manifest.py:
* gtk/jhbuildrc:
* jhbuild/jhbuildrc_common.py: Added.
(script_path):
(top_level_path):
(init):


Conflicts:
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168708 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164632 - [GTK] generate-gtkdoc should not generate documentation for source files for unbuilt source files
https://bugs.webkit.org/show_bug.cgi?id=128417

Reviewed by Carlos Garcia Campos.

.:

* Source/cmake/OptionsGTK.cmake: Define the paths to the pkgconfig files here, so that they
may one day be used in the webkitdom config file generation.

Source/WebCore:

* bindings/gobject/GNUmakefile.am: Generate a config file for webkitdom documentation generation.

Source/WebKit:

* PlatformGTK.cmake: Correct the definition of WebKitGTK_ENUM_GENERATION_HEADERS and generate
a gtkdoc-webkitgtk.cfg file to be used by generate-gtkdoc.

Source/WebKit/gtk:

* GNUmakefile.am: Generate a config file for generate-gtkdoc.

Source/WebKit2:

* GNUmakefile.am: Generate a config file for generate-gtkdoc.
* PlatformGTK.cmake: Ditto.

Tools:

* gtk/GNUmakefile.am: Make the documentation process depend on the configuration files.
* gtk/generate-gtkdoc: Switch from using hard-coded configurations to reading them from
a makefile. This allows accepting a header list from the build system, which can be used
to dynamically build a list of ignored files. We can ignore any source file that doesn't
have a corresponding header file on the header list.
* gtk/gtkdoc.py: Now accept a headers parameter, which can be used instead of passing just
source directories to gtkdoc-scan.


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Source/WebKit/ChangeLog
	Source/WebKit/gtk/ChangeLog
	Source/WebKit2/ChangeLog
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168709 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164704 - [GTK] generate-gtkdoc can fail with WebKit1 or WebKit2 only builds
https://bugs.webkit.org/show_bug.cgi?id=129319

Patch by Martin Robinson <mrobinson@igalia.com> on 2014-02-26
Reviewed by Carlos Garcia Campos.

Source/WebKit/gtk:

* GNUmakefile.am: Do not generate the documentation configuration file if the port
is disabled.

Source/WebKit2:

* GNUmakefile.am: Do not generate the documentation configuration file if the port
is disabled.

Tools:

* gtk/generate-gtkdoc:
(get_generator_for_config): Properly handle the situation where the pkgconfig file is missing.


Conflicts:
	Source/WebKit/gtk/ChangeLog
	Source/WebKit2/ChangeLog
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168710 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 164739 - [GTK] Reduplicate common.top_level_path in scripts
https://bugs.webkit.org/show_bug.cgi?id=129291

Reviewed by Philippe Normand.

Duplicate common.top_level_path and avoid polluting many scripts with awkward system
path manipulation and weird dependencies on the jhbuild infrastructure.

* Scripts/run-gtk-tests: Use common again.
(TestRunner._setup_testing_environment): Ditto.
* gtk/check-gdom-symbols: Ditto.
* gtk/common.py:
(top_level_path): Re-add top_level_path..
(get_build_path): Use the builtin top_level_path again.
* gtk/find-make-dist-errors: Use common again.
(get_missing_headers): Ditto.
* gtk/generate-inspector-gresource-manifest.py: Ditto.


Conflicts:
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168711 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge 165060 - [GTK] Simplify the GObject DOM bindings API break check into one step
https://bugs.webkit.org/show_bug.cgi?id=129571

Reviewed by Carlos Garcia Campos.

.:

* Source/PlatformGTK.cmake: We don't need to run the API break check before gtkdoc generation.
Add the check to 'make check.'

Source/WebCore:

* bindings/gobject/GNUmakefile.am: We no longer generate the webkitdom.symbols file in the
DerivedSources directory. All the logic is handled internally in the script now.
* bindings/scripts/gobject-run-api-break-test: Removed.

Tools:

* GNUmakefile.am: Add the API break check to 'make check.'
* gtk/check-for-webkitdom-api-breaks: Added. A combination of the two removed scripts.
* gtk/check-gdom-symbols: Removed.
* gtk/webkitdom.py: Added.
(header_name_list_from_gtkdoc_config_file): Gets the names of all headers from the gtkdoc config file.
(get_all_webkitdom_symbol_files): Find the symbol files from the names.


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Tools/ChangeLog

git-svn-id: http://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.4@168712 268f45cc-cd09-0410-ab3c-d52691b4dbfc