[Runtime] Add user href attribute check in widget element handler.

When parsing a widget config.xml file, runtime should make sure the author href
attribute is a valid URI, as it's required in W3C Widget spec. This patch will
fix this.

BUG=XWALK-2995
Fix Windows build.

Rename CreateWindow to avoid conflicting with some other symbols.
Merge pull request #2680 from darktears/master

Fix Windows build.
DEPS.xwalk: Roll v8-crosswalk (825a59c -> 05d1cf4)

05d1cf4 Merge pull request #68 from t25kim/develop
f05733c Fix syntax error to solve build failure
748da85 Merge pull request #67 from rakuco/fix-line-endings
b6cb3b2 XDK: Convert line endings from DOS to Unix.
Bump version to 11.39.259.0
[Tizen]Move global constant values into proper namespace.

The widget configuration keys and preset values should be included inside the namespace "application_widget_keys".
Merge pull request #2684 from yejingfu/fix-widget

[Tizen]Move global constant values into proper namespace.
[TIZEN] Runtime has no chance to get remote debug flag

The first created Runtime has no chance to notify its application
(observer) to update its remote debug flag.

BUG=https://crosswalk-project.org/jira/browse/XWALK-3080
Merge pull request #2688 from wuyuehang/XWALK-3080

[TIZEN] Runtime has no chance to get remote debug flag
Bump version to 11.39.260.0
Merge pull request #2691 from huningxin/roll_v8

DEPS.xwalk: Roll v8-crosswalk (825a59c -> 05d1cf4)
[Tizen]Fix typos.
Correct some typos.

BUG=XWALK-3084
Merge pull request #2692 from rookiejava/trunk

[Tizen]Fix typos.
Unexpected crash when run/debug xwalkdriver unit tests

Add code to check the conditions of empty App icon. Since the runtime::app_icon() will
return an empty icon for Android non-host-application.

BUG=https://crosswalk-project.org/jira/browse/XWALK-2914
Merge pull request #2636 from iKevinHan/devtools_cause_crash_android

[Android] Fix devtools favicon will cause crash.
Merge pull request #2639 from takethathe/XWALK-2995

[Runtime] Add author href attribute check in widget element handler.
[Tizen] Build with component=shared_library.

It is the first step required for our hacks and workarounds to separate
the building of Chromium's code from Crosswalk's and into separate RPMs.

This commit starts passing -Dcomponent=shared_library to gyp so that
instead of building most libraries we use as static libraries, we build
them as .so's that get installed into %{_libdir}/xwalk/lib.

They are not installed into %{_libdir} directly because:
 * These libraries are private and not expected to be used by any other
   package.
 * The executables we generate assume that these shared libraries are in
   a directory called "lib/" below their location. This is done
   automatically by gyp by setting the binaries' RPATH.

Consequently, xwalkctl and xwalk-launcher also needed to be moved from
%{_bindir} to %{_libdir}/lib/xwalk. The versions in %{_bindir} are now
small shell script wrappers that call the real binaries. The shell
script itself is a repurposed version of xwalk.in, which we had stopped
using since commit 08f95caf ("[Tizen] Do not install 'xwalk' binary to
'bin' directory").

BUG=XWALK-2571
[Tizen] Split the package into crosswalk-bin and crosswalk-libs.

crosswalk.spec has been split into crosswalk-bin.spec and
crosswalk-libs.spec, each of which generates a separate RPM package:

* crosswalk-bin: The actual Crosswalk web runtime with all the xwalk*
  binaries and supporting files (systemd and D-Bus service files, for
  example).

* crosswalk-libs: The Chromium shared libraries and supporting
  files (such as icudtl.dat) required by the crosswalk-bin RPM. It has
  no dependencies on any Tizen-specific packages/libraries.

The main goal of the split is to be able to build them
independently (and have them as separate projects in build.tizen.org).
This way, changes to Tizen libraries (or to src/xwalk itself) only cause
crosswalk-bin to be rebuilt. Building crosswalk-bin should take only a
few minutes (instead of the hours it took to build the whole Crosswalk
RPM before).

The README in packaging/ has been updated, and the TL;DR; version is
that one must now specify which package needs to be built when calling
gbs build:

  $ gbs build --spec crosswalk-bin.spec # or crosswalk-libs.spec

Building crosswalk-libs requires some trickery:

* First of all, we do not want to depend on any Tizen package, otherwise
  changes to them in tizen.org would automatically trigger a
  crosswalk-libs rebuild that can potentially take hours as described
  above.
  We solve this by introducing a "building_crosswalk_bin" variable (its
  default value is 1) to build/system.gyp, which already centralises all
  the detection of additional package dependencies and pkg-config calls.
  If it is 0, pkg-config will not be called at all in targets such as
  "tizen", which is what we want and do in crosswalk-libs.spec.

* Secondly, we need to build all the shared libraries that the Crosswalk
  binaries need. We cannot hardcode this list, so the only reliable and
  future-proof way of doing it is to use gyp's dump_dependency_json
  generator and parse the dependency graph it generates to determine
  which targets in src/ (but not src/xwalk) need to be built. This is
  what the newly-added print-chromium-deps.py script does.

As for crosswalk-bin, it requires some invasive changes to Chromium's
build system to avoid building all the heavy Chromium targets such as
"contents" or "blink_web". The bulk of the change is in
crosswalk-do-not-build-several-chromium-dependencies.patch. This patch
changes several targets in the build system so that they do not build or
generate any files and just pass "-l<target>" to the linker. In other
words, we trick the build system into assuming nothing needs to be built
and using the shared libraries crosswalk-libs has installed into
%{_libdir}/xwalk/lib instead. As the big description in the patch
mentions, maintaining this patch up-to-date across Chromium releases
requires manual intervention since targets and dependencies are very
likely to change every time. The amount of pain in the arse this is
going to represent over time is still to be determined.

Another noteworthy change is that libxwalk_backend_lib.so's installed
location has changed from %{_libdir}/xwalk to %{_libdir}/lib since we
need the latter anyway for all the other shared libraries. We then
employ a small amount of shell scripting to make sure it is not part of
the list of files we want in the crosswalk-libs RPM.

BUG=XWALK-2571