Bump version to 0.96
[platform/framework/web/tizen-extensions-crosswalk.git] / packaging / tizen-extensions-crosswalk.spec
1 %bcond_with wayland
2
3 %define _manifestdir %{TZ_SYS_RW_PACKAGES}
4 %define _desktop_icondir %{TZ_SYS_SHARE}/icons/default/small
5 %define _bluetooth_demo_package tizen-extensions-crosswalk-bluetooth-demo
6 %define _examples_package tizen-extensions-crosswalk-examples
7 %define _system_info_demo_package tizen-extensions-crosswalk-system-info-demo
8 %define _audiosystem_demo_package tizen-extensions-crosswalk-audiosystem-demo
9
10 Name:       tizen-extensions-crosswalk
11 Version:    0.96
12 Release:    0
13 License:    BSD-3-Clause and Apache-2.0
14 Group:      Development/Libraries
15 Summary:    Tizen Web APIs implemented using Crosswalk
16 URL:        https://github.com/otcshare/tizen-extensions-crosswalk
17 Source0:    %{name}-%{version}.tar.gz
18 Source1:    %{name}.in
19 Source2:    %{name}.png
20 Source3:    %{_bluetooth_demo_package}
21 Source4:    %{_examples_package}
22 Source5:    %{_system_info_demo_package}
23 Source6:    %{_audiosystem_demo_package}
24 Source1001: %{name}.manifest
25
26 BuildRequires: ninja
27 BuildRequires: pkgconfig(appcore-common)
28 BuildRequires: pkgconfig(bluez)
29 BuildRequires: pkgconfig(capi-appfw-application)
30 BuildRequires: pkgconfig(capi-appfw-app-manager)
31 BuildRequires: pkgconfig(capi-appfw-package-manager)
32 BuildRequires: pkgconfig(capi-network-bluetooth)
33 BuildRequires: pkgconfig(capi-network-connection)
34 BuildRequires: pkgconfig(capi-network-nfc)
35 BuildRequires: pkgconfig(capi-system-device)
36 BuildRequires: pkgconfig(capi-system-info)
37 BuildRequires: pkgconfig(capi-system-power)
38 BuildRequires: pkgconfig(capi-system-runtime-info)
39 BuildRequires: pkgconfig(capi-system-sensor)
40 BuildRequires: pkgconfig(capi-system-system-settings)
41 BuildRequires: pkgconfig(libtzplatform-config)
42 %if "%{profile}" == "ivi"
43 BuildRequires: pkgconfig(automotive-message-broker)
44 %endif
45 # For IVI, it doesn't need sim package.
46 %if "%{profile}" == "mobile"
47 BuildRequires: pkgconfig(capi-telephony-sim)
48 BuildRequires: pkgconfig(contacts-service2)
49 BuildRequires: pkgconfig(libpcrecpp)
50 %endif
51 BuildRequires: pkgconfig(capi-web-favorites)
52 BuildRequires: pkgconfig(capi-web-url-download)
53 BuildRequires: pkgconfig(capi-content-media-content)
54 BuildRequires: pkgconfig(dbus-glib-1)
55 # Evas.h is required by capi-web-favorites.
56 BuildRequires: pkgconfig(evas)
57 BuildRequires: pkgconfig(gio-2.0)
58 BuildRequires: pkgconfig(glib-2.0)
59 BuildRequires: pkgconfig(libgsignon-glib)
60 BuildRequires: pkgconfig(libpulse) >= 5.0
61 BuildRequires: pkgconfig(libudev)
62 BuildRequires: pkgconfig(message-port)
63 BuildRequires: pkgconfig(notification)
64 BuildRequires: pkgconfig(pkgmgr)
65 BuildRequires: pkgconfig(pkgmgr-info)
66 BuildRequires: pkgconfig(pmapi)
67 BuildRequires: pkgconfig(tapi)
68 BuildRequires: pkgconfig(vconf)
69 %if %{with wayland}
70 BuildRequires: pkgconfig(wayland-client)
71 %else
72 BuildRequires: pkgconfig(x11)
73 BuildRequires: pkgconfig(xrandr)
74 %endif
75 BuildRequires: python
76 Requires:      crosswalk
77 # For Content API
78 Requires:      media-thumbnail-server
79
80 %description
81 Tizen Web APIs implemented using Crosswalk.
82
83 %package -n %{_bluetooth_demo_package}
84 Summary: Tizen Web APIs using Crosswalk demo
85 Group: Development/Libraries
86 Requires:      %{name}
87
88 %description  -n %{_bluetooth_demo_package}
89 Tizen Web APIs bluetooth demo implementation using Crosswalk.
90
91 %package -n %{_examples_package}
92 Summary: Tizen Web APIs using Crosswalk examples
93 Group: Development/Libraries
94 Requires:      %{name}
95
96 %description  -n %{_examples_package}
97 Tizen Web APIs examples using Crosswalk.
98
99 %package -n %{_system_info_demo_package}
100 Summary: Tizen Web APIs using Crosswalk system info demo
101 Group: Development/Libraries
102 Requires:      %{name}
103
104 %description  -n %{_system_info_demo_package}
105 Tizen Web APIs system info demo implementation using Crosswalk.
106
107 %package -n %{_audiosystem_demo_package}
108 Summary: Sample volume control applicaiton
109 Group: Development/Libraries
110 Requires: %{name}
111
112 %description  -n %{_audiosystem_demo_package}
113 Sample Tizen volume control application that demonstrates the Tizen AudioSystem API usage.
114
115 %prep
116 %setup -q
117
118 cp %{SOURCE1001} .
119 cp %{SOURCE1} .
120 cp %{SOURCE2} .
121 cp %{SOURCE3} .
122 cp %{SOURCE4} .
123 cp %{SOURCE5} .
124
125 sed "s|@LIB_INSTALL_DIR@|%{_libdir}|g" %{name}.in > %{name}
126
127 %build
128
129 export GYP_GENERATORS='ninja'
130 GYP_OPTIONS="--depth=. -Dtizen=1 -Dextension_build_type=Debug -Dextension_host_os=%{profile}"
131
132 %if %{with wayland}
133 GYP_OPTIONS="$GYP_OPTIONS -Ddisplay_type=wayland"
134 %else
135 GYP_OPTIONS="$GYP_OPTIONS -Ddisplay_type=x11"
136 %endif
137
138 ./tools/gyp/gyp $GYP_OPTIONS tizen-wrt.gyp
139
140 ninja -C out/Default %{?_smp_mflags}
141
142 %install
143
144 # Binary wrapper.
145 install -m 755 -D %{name} %{buildroot}%{_bindir}/%{name}
146 install -m 755 -D %{SOURCE3} %{buildroot}%{_bindir}/%{_bluetooth_demo_package}
147 install -m 755 -D %{SOURCE4} %{buildroot}%{_bindir}/%{_examples_package}
148 install -m 755 -D %{SOURCE5} %{buildroot}%{_bindir}/%{_system_info_demo_package}
149 install -m 755 -D %{SOURCE6} %{buildroot}%{_bindir}/%{_audiosystem_demo_package}
150
151 # Extensions.
152 mkdir -p %{buildroot}%{_libdir}/%{name}
153 install -p -m 644 out/Default/libtizen*.so %{buildroot}%{_libdir}/%{name}
154
155 # Examples.
156 mkdir -p %{buildroot}%{_datarootdir}/%{name}/examples
157 mkdir -p %{buildroot}%{_datarootdir}/%{name}/examples/js
158 install -p -m 644 examples/*.html %{buildroot}%{_datarootdir}/%{name}/examples
159 install -p -m 644 examples/js/*.js %{buildroot}%{_datarootdir}/%{name}/examples/js
160
161 # Demos
162 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/tizen
163 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/tizen/css
164 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/tizen/js
165 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/tizen/images
166
167 install -p -m 644 demos/tizen/*.html %{buildroot}%{_datarootdir}/%{name}/demos/tizen
168 install -p -m 644 demos/tizen/css/*.css %{buildroot}%{_datarootdir}/%{name}/demos/tizen/css
169 install -p -m 644 demos/tizen/js/*.js %{buildroot}%{_datarootdir}/%{name}/demos/tizen/js
170 install -p -m 644 demos/tizen/images/*.png %{buildroot}%{_datarootdir}/%{name}/demos/tizen/images
171
172 # Demos - System Info
173 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/system_info
174 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/system_info/css
175 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/system_info/js
176 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/system_info/images
177
178 install -p -m 644 demos/system_info/*.html %{buildroot}%{_datarootdir}/%{name}/demos/system_info
179 install -p -m 644 demos/system_info/css/*.css %{buildroot}%{_datarootdir}/%{name}/demos/system_info/css
180 install -p -m 644 demos/system_info/js/*.js %{buildroot}%{_datarootdir}/%{name}/demos/system_info/js
181 install -p -m 644 demos/system_info/images/*.png %{buildroot}%{_datarootdir}/%{name}/demos/system_info/images
182
183 # Demos - audiosystem api 
184 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem
185 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/css
186 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/css/ui-lightness
187 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/css/ui-lightness/images
188 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/js
189 mkdir -p %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/images
190
191 install -p -m 644 demos/audiosystem/*.html %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem
192 install -p -m 644 demos/audiosystem/css/*.css %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/css
193 install -p -m 644 demos/audiosystem/css/ui-lightness/*.css %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/css/ui-lightness
194 install -p -m 644 demos/audiosystem/css/ui-lightness/images/* %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/css/ui-lightness/images
195 install -p -m 644 demos/audiosystem/js/*.js %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/js
196 install -p -m 644 demos/audiosystem/images/*.png %{buildroot}%{_datarootdir}/%{name}/demos/audiosystem/images
197
198 # register to the package manager
199 install -m 644 -D %{_examples_package}.xml %{buildroot}%{_manifestdir}/%{_examples_package}.xml
200 install -m 644 -D %{_bluetooth_demo_package}.xml %{buildroot}%{_manifestdir}/%{_bluetooth_demo_package}.xml
201 install -m 644 -D %{_system_info_demo_package}.xml %{buildroot}%{_manifestdir}/%{_system_info_demo_package}.xml
202 install -m 644 -D %{_audiosystem_demo_package}.xml %{buildroot}%{_manifestdir}/%{_audiosystem_demo_package}.xml
203 install -p -D %{name}.png %{buildroot}%{_desktop_icondir}/%{_examples_package}.png
204 install -p -D %{name}.png %{buildroot}%{_desktop_icondir}/%{_bluetooth_demo_package}.png
205 install -p -D %{name}.png %{buildroot}%{_desktop_icondir}/%{_system_info_demo_package}.png
206 install -p -D %{name}.png %{buildroot}%{_desktop_icondir}/%{_audiosystem_demo_package}.png
207
208 %files
209 # TODO(rakuco): This causes problems on 2.1 when creating the package.
210 # %license LICENSE
211 %{_bindir}/%{name}
212 %{_libdir}/%{name}/libtizen*.so
213
214 %files -n %{_bluetooth_demo_package}
215 %{_bindir}/%{_bluetooth_demo_package}
216 %{_manifestdir}/%{_bluetooth_demo_package}.xml
217 %{_desktop_icondir}/%{_bluetooth_demo_package}.png
218 %{_datarootdir}/%{name}/demos/tizen/*.html
219 %{_datarootdir}/%{name}/demos/tizen/css/*.css
220 %{_datarootdir}/%{name}/demos/tizen/js/*.js
221 %{_datarootdir}/%{name}/demos/tizen/images/*.png
222
223 %files -n %{_examples_package}
224 %{_bindir}/%{_examples_package}
225 %{_manifestdir}/%{_examples_package}.xml
226 %{_desktop_icondir}/%{_examples_package}.png
227 %{_datarootdir}/%{name}/examples/*.html
228 %{_datarootdir}/%{name}/examples/js/*.js
229
230 %files -n %{_system_info_demo_package}
231 %{_bindir}/%{_system_info_demo_package}
232 %{_manifestdir}/%{_system_info_demo_package}.xml
233 %{_desktop_icondir}/%{_system_info_demo_package}.png
234 %{_datarootdir}/%{name}/demos/system_info/*.html
235 %{_datarootdir}/%{name}/demos/system_info/css/*.css
236 %{_datarootdir}/%{name}/demos/system_info/js/*.js
237 %{_datarootdir}/%{name}/demos/system_info/images/*.png
238
239 %files -n %{_audiosystem_demo_package}
240 %{_bindir}/%{_audiosystem_demo_package}
241 %{_manifestdir}/%{_audiosystem_demo_package}.xml
242 %{_desktop_icondir}/%{_audiosystem_demo_package}.png
243 %{_datarootdir}/%{name}/demos/audiosystem/index.html
244 %{_datarootdir}/%{name}/demos/audiosystem/css/*.css
245 %{_datarootdir}/%{name}/demos/audiosystem/css/ui-lightness/*.css
246 %{_datarootdir}/%{name}/demos/audiosystem/css/ui-lightness/images/*
247 %{_datarootdir}/%{name}/demos/audiosystem/js/*.js
248 %{_datarootdir}/%{name}/demos/audiosystem/images/*