[Tizen] Add spec and manifest 68/157268/8
authorYoungsoo Choi <kenshin.choi@samsung.com>
Wed, 11 Oct 2017 08:20:51 +0000 (17:20 +0900)
committerYoungsoo Choi <kenshin.choi@samsung.com>
Fri, 3 Nov 2017 04:42:39 +0000 (13:42 +0900)
This is for generating rpm files.

Change-Id: I5c5bde00347e0303e2ebbe760ea09734c9142147
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
packaging/electron-efl.manifest [new file with mode: 0644]
packaging/electron-efl.spec [new file with mode: 0755]
packaging/org.tizen.electron-efl.png [new file with mode: 0755]
packaging/org.tizen.electron-efl.xml.in [new file with mode: 0644]

diff --git a/packaging/electron-efl.manifest b/packaging/electron-efl.manifest
new file mode 100644 (file)
index 0000000..75b0fa5
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+    <request>
+        <domain name="_"/>
+    </request>
+</manifest>
diff --git a/packaging/electron-efl.spec b/packaging/electron-efl.spec
new file mode 100755 (executable)
index 0000000..bf21cd9
--- /dev/null
@@ -0,0 +1,96 @@
+Name:       electron-efl
+Summary:    Electron EFL
+Version:    1.6.7
+Release:    1
+Group:      Web Framework/Web Runtime
+License:    MIT
+URL:        https://www.tizen.org
+Source0:    %{name}-%{version}.tar.gz
+Source1001: %{name}.manifest
+
+BuildRequires: libcap-devel, libasound-devel, python, ninja, nodejs, nodejs-npm
+# It's added to accelerate generating ninja files.
+%ifarch armv7l
+BuildRequires: python-accel-armv7l-cross-arm
+%endif
+%ifarch aarch64
+BuildRequires: python-accel-aarch64-cross-aarch64
+%endif
+BuildRequires: pkgconfig(chromium-efl) >= 56.0.0, pkgconfig(chromium-efl) < 57.0.0
+BuildRequires: pkgconfig(dbus-glib-1)
+BuildRequires: pkgconfig(ecore-evas)
+BuildRequires: pkgconfig(elementary)
+BuildRequires: pkgconfig(elocation)
+BuildRequires: pkgconfig(evas)
+BuildRequires: pkgconfig(expat)
+BuildRequires: pkgconfig(gmodule-2.0)
+BuildRequires: pkgconfig(icu-i18n)
+# It's added to use TZ_SYS_RO_PACKAGES.
+BuildRequires: pkgconfig(libtzplatform-config)
+BuildRequires: pkgconfig(nss)
+
+Requires: /usr/bin/systemctl
+
+%description
+Web Runtime Engine based on Electron EFL
+
+%prep
+%setup -q
+
+cp %{SOURCE1001} .
+
+%build
+%define _icondir %TZ_SYS_RO_APP/%{_pkgid}/shared/res
+%define _pkgid org.tizen.%{name}
+%define _xmldir %TZ_SYS_RO_PACKAGES
+%define _out out.tizen/out/D
+
+export DEFINE_ARGS="
+                    desktop_linux=0
+                    libchromiumcontent_component=1
+                    use_efl=1
+                    is_tizen=1
+                   "
+
+./script/bootstrap.py \
+    --libcc_chromium_efl_path /usr/lib \
+    --define "${DEFINE_ARGS}" \
+    --dev \
+    --disable_clang \
+    -v
+
+./script/build.py -c D
+
+%install
+install -d %{_out}/packaging
+install -d %{buildroot}%{_xmldir}
+sed -e 's#@VERSION@#%{tizen_version_major}.%{tizen_version_minor}#g' \
+    -e 's#@TZ_SYS_RO_APP@#%{TZ_SYS_RO_APP}#g' \
+    -e 's#@ICON_DIR@#%{_icondir}#g' \
+    packaging/%{_pkgid}.xml.in \
+    > %{_out}/packaging/%{_pkgid}.xml
+install -m 0644 %{_out}/packaging/%{_pkgid}.xml %{buildroot}%{_xmldir}
+
+mkdir -p %{buildroot}/usr/apps/org.tizen.electron-efl/bin/resources
+install -d %{buildroot}/%{_icondir}
+install -d %{buildroot}/%{_libdir}
+install -m 0644 packaging/%{_pkgid}.png            %{buildroot}/%{_icondir}
+install -m 0755 %{_out}/libnode.so                 %{buildroot}/%{_libdir}
+install -m 0755 %{_out}/electron                   %{buildroot}/usr/apps/org.tizen.electron-efl/bin
+install -m 0755 wrt/build/script/run_was_tizen.sh  %{buildroot}/usr/apps/org.tizen.electron-efl/bin
+install -m 0755 %{_out}/resources/default_app.asar %{buildroot}/usr/apps/org.tizen.electron-efl/bin/resources
+install -m 0755 %{_out}/resources/electron.asar    %{buildroot}/usr/apps/org.tizen.electron-efl/bin/resources
+cp -rf wrt/wrt_support                             %{buildroot}/usr/apps/org.tizen.electron-efl/bin/resources
+cp -rf wrt/node_modules                            %{buildroot}/usr/apps/org.tizen.electron-efl/bin/resources
+
+%clean
+rm -fr %{buildroot}
+
+%files
+%manifest packaging/electron-efl.manifest
+/usr/apps/org.tizen.electron-efl/bin/electron
+/usr/apps/org.tizen.electron-efl/bin/run_was_tizen.sh
+/usr/apps/org.tizen.electron-efl/bin/resources/*
+%{_icondir}/%{_pkgid}.png
+%{_libdir}/libnode.so
+%{_xmldir}/%{_pkgid}.xml
diff --git a/packaging/org.tizen.electron-efl.png b/packaging/org.tizen.electron-efl.png
new file mode 100755 (executable)
index 0000000..733cf03
Binary files /dev/null and b/packaging/org.tizen.electron-efl.png differ
diff --git a/packaging/org.tizen.electron-efl.xml.in b/packaging/org.tizen.electron-efl.xml.in
new file mode 100644 (file)
index 0000000..39ac480
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns="http://tizen.org/ns/packages" api-version="@VERSION@" package="org.tizen.electron-efl" version="1.6.7">
+  <label>Web Runtime Engine for Web Apps</label>
+  <icon>org.tizen.electron-efl.png</icon>
+  <author href="www.samsung.com" email="kenshin.choi@samsung.com">SWC</author>
+  <description>Web Runtime Engine based on electron-efl</description>
+  <ui-application appid="org.tizen.electron-efl" exec="@TZ_SYS_RO_APP@/org.tizen.electron-efl/bin/electron" nodisplay="false" multiple="false" type="capp" taskmanage="true">
+    <label>electron-efl</label>
+    <icon>org.tizen.electron-efl.png</icon>
+    <label xml:lang="en-us">electron-efl</label>
+    <application-service>
+      <operation name="http://tizen.org/appcontrol/operation/view" />
+      <uri name="http" />
+      <uri name="https" />
+      <uri name="file" />
+    </application-service>
+    <application-service>
+      <operation name="http://tizen.org/appcontrol/operation/view" />
+      <mime name="application/x-shockwave-flash" />
+      <mime name="image/svg+xml" />
+      <mime name="text/html" />
+      <mime name="application/xml" />
+    </application-service>
+  </ui-application>
+  <privileges>
+    <privilege>http://tizen.org/privilege/bookmark.admin</privilege>
+    <privilege>http://tizen.org/privilege/web-history.admin</privilege>
+    <privilege>http://tizen.org/privilege/haptic</privilege>
+    <privilege>http://tizen.org/privilege/camera</privilege>
+    <privilege>http://tizen.org/privilege/call</privilege>
+  </privileges>
+</manifest>