Packaging: re-enable XDG_Shell for Tizen
The Weston has been upgraded to 1.5 and XDG_Shell basics for Weston 1.5 have been in oz-wl.
So we think it's time to re-enable it now. Meanwhile some related issues are under fixing. More changes will come in.
[Android] Use reflection layer in xwalk core for runtime usage

As now there is reflection layer between xwalk core and xwalk
core internal, there is no need to use the one between runtime
and runtime client for runtime usage.

After this patch, most facilities to support shared mode will be
moved from runtime to xwalk core. Besides, runtime_java will be
merged into runtime_client_java.
XWalkRuntimeLib.apk will keep the name unchanged, but its package
will be org.xwalk.core which was org.xwalk.runtime.lib previously.

TODO: Extension is still using reflection in runtime layer which
will be refined in future commits.
[Android] Move extension manager out to runtime layer

Extension in runtime layer (XWalkExtensionClient) was
directly using XWalkExtensionAndroid, which has core
internal dependency.
It should be based on the extension provide by xwalk
core.
Move all the classes for runtime extension to runtime
client package and remove the reflection layer which
is not between XWalkExtension and XWalkExtensionInternal.
[Tizen] hardcode OZONE_WAYLAND_USE_XDG_SHELL env in service file

This change tells ozone wayland backend
that shell is supporting unstable xdg-shell.

This is needed for by tizen's Application.hide().

Alternative would be store this var in system wide env
ie: /etc/profile/crosswalk.sh
And eventually force a login shell (sh -l -c "...")
in this service file.

But for performance concern it's hardcoded there,
this change may be reverted later
if Tizen sessions decide to use login shells then it will work same.

Refer to this page for xdg-shell integration in Tizen :

https://wiki.tizen.org/wiki/Wayland_xdg-shell_protocol
Expose real path of Virtual Root (native file system)

Add a function, getRealPath(), to native_file_system object. Developer
passes virtual root name to this function and get full path of this
virtual root.

BUG=XWALK-2455
Make 'xwalkctl' Tizen-only

SSIA. Crosswalk on desktop does not need xwalkctl, as it does not
provide application management.
[Tizen] Reword Crosswalk's summary in the spec file.

rpmlint currently complains about Crosswalk's Summary entry in its spec
file:

  W: name-repeated-in-summary C Crosswalk
  The name of the package is repeated in its summary. This is often
  redundant information and looks silly in various programs' output.
  Make the summary brief and to the point without including redundant
  information in it.

Follow the suggestion and remove "Crosswalk" from the text.
Merge pull request #2330 from yejingfu/oz-wl

[Tizen] Packaging: re-enable XDG_Shell for Tizen
Merge pull request #2333 from rzr/master

 [Tizen] hardcode OZONE_WAYLAND_USE_XDG_SHELL env in service file
Bump version to 9.38.203.0
Merge pull request #2403 from shawngao5/nfs-path

Expose real path of Virtual Root (native file system)
Merge pull request #2387 from wang16/shared_core

[Android] Use reflection layer in xwalk core for runtime usage
Merge pull request #2406 from pozdnyakov/xwalkctl_tizen_only

Make 'xwalkctl' Tizen-only
Remove application storage from the desktop code path

Remove application storage from the desktop code path
(make it Tizen-only). The AppliactionServiceTizen object
was added to own the application storage.

This patch also encapsulates application launching within
the ApplicationService object, and contains multiple code
cleanups.
Merge pull request #2407 from rakuco/improve-spec-summary

[Tizen] Reword Crosswalk's summary in the spec file.
Merge pull request #2405 from pozdnyakov/Move_app_storage_to_Tizen

Remove application storage from the desktop code path
Re-organize the application un/installation code

1) The appplication un/installation now is Tizen-only.
2) The code which is only used by 'xwalkctl' has moved
   to 'application/tools/tizen'.
3) The unneeded platform abstractions were removed.
[Android] Rewrite generate_xwalk_core_library_aar.py.

The previous version was horribly bloated and broken. The main
issue (which is blocking XWALK-1930) is that CopyBinaries() recurses
into some directories and tries to copy each subpath individually. Not
only is this entirely unnecessary, but the code does it the wrong way
and, for ARM builds, creates something like
'jni/xwalk_core_library_java.jar/armeabi-v7a/libxwalkcore.so'.

Instead of just fixing one issue, rewrite the whole script in a saner,
much smaller and more Pythonic way:

* Remove a lot of unnecessary functions.
* Get rid of the "-s" option which was not being used at all.
* Stop calling sys.exit() in main() since it's supposed to return an
  exit code instead.
* Stop copying files from xwalk_core_library/ into an intermediate
  directory and just write them to the zip file directly.
[Android] Packaging enhancement for external extensions

Add extension_manager.py to download online extension repo.
Usage of extension_manager.py:

1. Add extension
$ python extension_manager.py \
--add=https://github.com/crosswalk-project/crosswalk-android-extensions.git

2. List all extensions
$ python extension_manager.py -l

3. Search extension
$ python extension_manager.py --search=crosswalk*

4. Remove extension repo
$ python extension_manager.py --remove=crosswalk-android-extensions

5. Enable extension
$ python extension_manager.py --enable=crosswalk*

6. Disable extension
$ python extension_manager.py --disable=crosswalk*

Usage of make_apk.py
$ python make_apk.py --package=your.app.name \
--manifest=<your_manifest_path>

BUG=XWALK-1947
Merge pull request #2412 from rakuco/sane-aar-generator

[Android] Rewrite generate_xwalk_core_library_aar.py.