Create profile-common binary for unified environment. 04/96504/12
authorMyungJoo Ham <myungjoo.ham@samsung.com>
Wed, 9 Nov 2016 07:21:59 +0000 (16:21 +0900)
committerMyungJoo Ham <myungjoo.ham@samsung.com>
Fri, 24 Feb 2017 04:29:16 +0000 (13:29 +0900)
commitd43134e660c3b71249fa5da8c4a9be144ee8e418
treeefa4d13933f03b34ac44c1ce864193cf6ca5f39d
parent830f4d8f4d596183d257923c554f48a6dfc789bf
Create profile-common binary for unified environment.

In Tizen 4.0, supporting "Configurability / Building Blocks",
a package is highly recommended to have a single common binary
for every profile.

If the behavior is different per profile,
1. (highly recommended) probe the profile at init/run time.
2. (highly recommended) distinguish at install time.
3. (not so recommended, but acceptable) create multiple binaries and choose one at install time;
the spec file becomes extremely messy and build time does not become shorter.
4. (CANNOT accept), different external headers (devel package) per profile.

To create an example of case 1, I've updated crosswalk-tizen.

Because there are other packages in case 4 and there are buildrequires cannot be met in some profiles,
this commit targets the future "unified" OBS project only. For the conventional profiles, the
common-ness with case 1 is limited.

To maintainer: PLEASE remove model_build_features soon. Replace it with some vconf/capi values as it is done
for other features with common/platform_info.h

- Update at patch set 3:
  : Added workaround due to chromium-efl's devel package issue (header contents different per profile for Tizen internal packages)

Change-Id: I17f2be3107e4085373af644330b5d971fce1cdd7
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
17 files changed:
common/application_data.cc
common/application_data.h
common/common.gyp
common/platform_info.cc [new file with mode: 0644]
common/platform_info.h [new file with mode: 0644]
packaging/crosswalk-tizen.spec
runtime/browser/native_window.cc
runtime/browser/native_window.h
runtime/browser/runtime.cc
runtime/browser/runtime_process.cc
runtime/browser/web_application.cc
runtime/browser/web_application.h
runtime/browser/web_view.cc
runtime/browser/web_view.h
runtime/browser/web_view_impl.cc
runtime/browser/web_view_impl.h
runtime/runtime.gyp