]>
Commit | Line | Data |
---|---|---|
356dfb23 ER |
1 | # |
2 | # Conditional build: | |
3 | %bcond_without autodeps # don't BR packages needed only for resolving deps | |
bccbb380 ER |
4 | %bcond_with python # do not build Python bindings |
5 | %bcond_with java # do not build Java bindings | |
40472a64 | 6 | %bcond_with tests # perform "make test". needs running flixd on localhost |
c67dbec0 | 7 | %bcond_without demo # use production tarball (you need one too:)) |
356dfb23 | 8 | # |
a5747b91 ER |
9 | %ifarch %{x8664} |
10 | %undefine with_python | |
11 | %undefine with_java | |
12 | %endif | |
13 | # | |
6fc8cf70 | 14 | %define full_version %{version}%{?with_demo:_DEMO}%{?_extra} |
02d12547 | 15 | %define _extra %{nil} |
c9b33d7a | 16 | # |
356dfb23 | 17 | %include /usr/lib/rpm/macros.perl |
2cc44e6c | 18 | Summary: On2 Flix Engine |
e45506f7 | 19 | Summary(pl.UTF-8): Silnik On2 Flix |
27c0e367 | 20 | Name: flixengine |
88012a45 | 21 | Version: 8.0.10.1 |
b37d686c | 22 | Release: 0.2 |
f8494186 | 23 | License: (probably) not distributable |
27c0e367 ER |
24 | Group: Applications |
25 | # download demo from http://flix.on2.com/demos/ | |
d8688be2 | 26 | # check for newer versions at http://flix.on2.com/flix/download/ |
e9b1b01f | 27 | # Source0Download: http://flix.on2.com/demos/flixenginelinuxdemo.tar.gz |
c67dbec0 | 28 | %if %{with demo} |
8c85be7f | 29 | Source0: %{name}linuxdemo-%{version}.tar.gz |
88012a45 | 30 | # NoSource0-md5: 3d0accb19f6d9dcd6ea2cd139a150d9e |
27c0e367 | 31 | NoSource: 0 |
c67dbec0 ER |
32 | %endif |
33 | %if %{without demo} | |
d8688be2 | 34 | # Source1Download: http://flix.on2.com/flix/download/flix-engine-installer-linux-%{version}.tar.gz |
6fc8cf70 | 35 | Source1: flix-engine-installer-linux-%{version}%{?_extra}.tar.gz |
a615b112 | 36 | # NoSource1-md5: ecf91acf067775e27059977b7a5a8da7 |
c67dbec0 ER |
37 | NoSource: 1 |
38 | %endif | |
39 | Source2: %{name}.init | |
d84efd8a | 40 | Source3: %{name}.sysconfig |
a5747b91 | 41 | Patch0: %{name}-libdir.patch |
748f3cdf | 42 | Patch1: %{name}-phploader.patch |
b005eb81 | 43 | URL: http://www.on2.com/index.php?474 |
356dfb23 | 44 | BuildRequires: bash |
a5747b91 | 45 | %{?with_java:BuildRequires: jre} |
27c0e367 ER |
46 | BuildRequires: perl-base |
47 | BuildRequires: php-devel | |
a5747b91 | 48 | %{?with_python:BuildRequires: python} |
356dfb23 | 49 | BuildRequires: rpm-perlprov >= 4.1-13 |
9d8f979c | 50 | BuildRequires: rpmbuild(macros) >= 1.344 |
40472a64 JB |
51 | %if %{with autodeps} |
52 | BuildRequires: ffmpeg-libs | |
53 | BuildRequires: lame-libs | |
54 | %endif | |
f8494186 | 55 | Requires(post,postun): /sbin/ldconfig |
44a0377b | 56 | Requires(post,preun): /sbin/chkconfig |
825446df ER |
57 | Requires(postun): /usr/sbin/groupdel |
58 | Requires(postun): /usr/sbin/userdel | |
59 | Requires(pre): /bin/id | |
60 | Requires(pre): /usr/bin/getgid | |
61 | Requires(pre): /usr/sbin/groupadd | |
62 | Requires(pre): /usr/sbin/useradd | |
44a0377b | 63 | Requires: portmap |
f609d41d | 64 | Requires: rc-scripts >= 0.4.1.5 |
825446df ER |
65 | Provides: group(flixd) |
66 | Provides: user(flixd) | |
a5747b91 | 67 | ExclusiveArch: %{ix86} %{x8664} |
27c0e367 ER |
68 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
69 | ||
9d124465 | 70 | # should not provide such deps |
6c2e0931 | 71 | %define _noautoprov libavutil.so.49 libavformat.so.50 libavcodec.so.51 |
9d124465 | 72 | # need to provide it for flixd, but we don't want package name dep here |
6c2e0931 | 73 | %define _noautoreq %{_noautoprov} |
9d124465 | 74 | |
593b9d17 ER |
75 | %define _sysconfdir /etc/on2 |
76 | ||
27c0e367 | 77 | %description |
2cc44e6c ER |
78 | The On2 Flix Engine provides many of the Flash 8 video encoding |
79 | features of our industry leading On2 Flix Pro video encoder in a | |
80 | powerful software SDK. | |
81 | ||
82 | The Engine enables you to add the power and efficiency of Flash video | |
83 | with On2 VP6 encoding to your intranet, website and other server-based | |
84 | applications, preserve alpha channel in the video output, and much | |
85 | more. | |
86 | ||
87 | The major feature of the On2 Flix Engine 8 is support for Adobe Flash | |
88 | 8 video with the On2 VP6 codec and FLV video output that can be played | |
89 | directly in the Flash Player, streamed through the Adobe Flash Media | |
90 | Server, or imported into Flash Studio. The new FLV output also is | |
91 | fully compliant with FLV format metadata and Adobe Flash Player | |
92 | standards. | |
27c0e367 | 93 | |
04a8bc7a | 94 | %description -l pl.UTF-8 |
e6f8792c ER |
95 | Silnik On2 Flix Engine udostępnia wiele spośród możliwości |
96 | kodowania filmów Flash 8 wiodącego kodera On2 Flix Pro w postaci | |
97 | potężnego SDK. | |
40472a64 | 98 | |
e6f8792c ER |
99 | Silnik pozwala wykorzystywać możliwości i wydajność filmów Flash |
100 | z kodowaniem On2 VP6 w intranecie, na stronie WWW i w innych | |
04a8bc7a | 101 | zastosowaniach serwerowych, z zachowaniem kanału alpha na wyjściu |
40472a64 JB |
102 | obrazu i innymi opcjami. |
103 | ||
e6f8792c ER |
104 | Główną cechą silnika On2 Flix Engine 8 jest obsługa filmów Adobe |
105 | Flash 8 z kodekiem On2 VP6 oraz wyjściem obrazu FLV, które można | |
106 | odtwarzać bezpośrednio w odtwarzaczu Flash, przekazywać strumieniem | |
107 | poprzez Adobe Flash Media Server lub importować do Flash Studio. Nowe | |
108 | wyjście FLV jest także w pełni zgodne z formatem metadanych FLV i | |
109 | standardami Adobe Flash Playera. | |
40472a64 | 110 | |
27c0e367 | 111 | %package libs |
2cc44e6c | 112 | Summary: Shared libraries for On2 Flix Engine |
e45506f7 | 113 | Summary(pl.UTF-8): Biblioteki współdzielone silnika On2 Flix |
27c0e367 ER |
114 | Group: Libraries |
115 | ||
116 | %description libs | |
2cc44e6c | 117 | Shared libraries for On2 Flix Engine. |
27c0e367 | 118 | |
04a8bc7a JR |
119 | %description libs -l pl.UTF-8 |
120 | Biblioteki współdzielone silnika On2 Flix. | |
40472a64 | 121 | |
27c0e367 | 122 | %package devel |
2cc44e6c | 123 | Summary: Header files for On2 Flix Engine library |
e45506f7 | 124 | Summary(pl.UTF-8): Pliki nagłówkowe biblioteki silnika On2 Flix |
27c0e367 ER |
125 | Group: Development/Libraries |
126 | ||
127 | %description devel | |
2cc44e6c | 128 | Header files for On2 Flix Engine library. |
27c0e367 | 129 | |
04a8bc7a JR |
130 | %description devel -l pl.UTF-8 |
131 | Pliki nagłówkowe biblioteki silnika On2 Flix. | |
40472a64 | 132 | |
3d68873f ER |
133 | %package -n java-flixengine |
134 | Summary: Java bindings for On2 Flix Engine | |
e45506f7 | 135 | Summary(pl.UTF-8): Wiązania Javy dla silnika On2 Flix |
3d68873f ER |
136 | Group: Libraries |
137 | Requires: %{name}-libs = %{version}-%{release} | |
d84efd8a | 138 | Requires: jpackage-utils |
3d68873f ER |
139 | |
140 | %description -n java-flixengine | |
141 | Java bindings for On2 Flix Engine. | |
142 | ||
04a8bc7a JR |
143 | %description -n java-flixengine -l pl.UTF-8 |
144 | Wiązania Javy dla silnika On2 Flix. | |
40472a64 | 145 | |
3d68873f ER |
146 | %package -n perl-flixengine |
147 | Summary: Perl bindings for On2 Flix Engine | |
e45506f7 | 148 | Summary(pl.UTF-8): Wiązania perla dla silnika On2 Flix |
3d68873f ER |
149 | Group: Libraries |
150 | Requires: %{name}-libs = %{version}-%{release} | |
151 | ||
152 | %description -n perl-flixengine | |
153 | Perl bindings for On2 Flix Engine. | |
154 | ||
04a8bc7a JR |
155 | %description -n perl-flixengine -l pl.UTF-8 |
156 | Wiązania perla dla silnika On2 Flix. | |
40472a64 | 157 | |
3d68873f ER |
158 | %package -n php-flixengine |
159 | Summary: PHP bindings for On2 Flix Engine | |
e45506f7 | 160 | Summary(pl.UTF-8): Wiązania PHP dla silnika On2 Flix |
3522469a | 161 | %{?requires_php_extension} |
3d68873f ER |
162 | Group: Libraries |
163 | Requires: %{name}-libs = %{version}-%{release} | |
9d8f979c | 164 | Requires: php-common >= 4:5.0.4 |
3d68873f ER |
165 | |
166 | %description -n php-flixengine | |
167 | PHP bindings for On2 Flix Engine. | |
168 | ||
04a8bc7a JR |
169 | %description -n php-flixengine -l pl.UTF-8 |
170 | Wiązania PHP dla silnika On2 Flix. | |
40472a64 | 171 | |
3d68873f ER |
172 | %package -n python-flixengine |
173 | Summary: Python bindings for On2 Flix Engine | |
e45506f7 | 174 | Summary(pl.UTF-8): Wiązania Pythona dla silnika On2 Flix |
3d68873f ER |
175 | Group: Libraries |
176 | Requires: %{name}-libs = %{version}-%{release} | |
177 | ||
178 | %description -n python-flixengine | |
179 | Python bindings for On2 Flix Engine. | |
180 | ||
04a8bc7a JR |
181 | %description -n python-flixengine -l pl.UTF-8 |
182 | Wiązania Pythona dla silnika On2 Flix. | |
40472a64 | 183 | |
593b9d17 ER |
184 | %package apidocs |
185 | Summary: HTML API Documentation for On2 Flix Engine | |
186 | Summary(pl.UTF-8): Dokumentacja HTML API dla silnika On2 Flix | |
fd1d00dc | 187 | Group: Documentation |
593b9d17 | 188 | Obsoletes: flixengine-docs |
fd1d00dc | 189 | |
593b9d17 ER |
190 | %description apidocs |
191 | HTML API Documentation for On2 Flix Engine. | |
348d7388 | 192 | |
593b9d17 ER |
193 | %description apidocs -l pl.UTF-8 |
194 | Dokumentacja HTML API dla silnika On2 Flix. | |
fd1d00dc | 195 | |
27c0e367 | 196 | %prep |
c9b33d7a ER |
197 | %setup -q -T -b %{?with_demo:0}%{!?with_demo:1} -n flix-engine-installer-linux-%{full_version} |
198 | bin=flix-engine-installer-linux-%{full_version}.bin | |
199 | tar=flix-engine-linux-%{full_version}.tar.gz | |
2cc44e6c ER |
200 | |
201 | OFFSET=$( awk -F= '/OFFSET=/{print $2; exit}' $bin) | |
202 | dd bs=8 if=$bin of=$tar skip=$OFFSET | |
203 | %{__tar} zxf $tar | |
204 | ||
a5747b91 | 205 | %patch0 -p1 |
748f3cdf | 206 | %patch1 -p1 |
a5747b91 | 207 | |
2cc44e6c ER |
208 | %{__sed} -ne '/## FUNCTIONS common/,/## END - common function/p' $bin > functions.sh |
209 | cat <<'EOF' > install.sh | |
210 | #!/bin/bash | |
c9b33d7a | 211 | export VERSION=%{full_version} |
c67dbec0 | 212 | %{?with_demo:export FLIXENGINEDEMO=1} |
2cc44e6c | 213 | export nullout=/dev/null |
c9b33d7a | 214 | export tempdir=%{_builddir}/flix-engine-installer-linux-%{full_version} |
2cc44e6c ER |
215 | |
216 | . $(dirname "$0")/functions.sh | |
217 | cd .flix-engine-installation-files | |
218 | ||
219 | export -f getinput inset ynanswer | |
e9f4366e ER |
220 | instlog=install.log |
221 | ./install.sh "$@" | tee -i $instlog | |
222 | if [ -f "$instlog" ]; then | |
223 | echo "Local system info:" >>$instlog | |
224 | uname -a 2>/dev/null >>$instlog | |
225 | head /etc/*version* 2>/dev/null >>$instlog | |
226 | head /etc/*release* 2>/dev/null >>$instlog | |
227 | cat /proc/cpuinfo 2>/dev/null >>$instlog | |
228 | /lib/ld-linux.so.2 /lib/libc.so.6 2>/dev/null >>$instlog | |
229 | echo "---" 2>/dev/null >>$instlog | |
230 | /lib/ld-linux.so.2 /lib32/libc.so.6 2>/dev/null >>$instlog | |
231 | echo "---" 2>/dev/null >>$instlog | |
232 | /lib/libc.so.6 2>/dev/null >>$instlog | |
233 | echo "---" 2>/dev/null >>$instlog | |
234 | file /lib/libc.so.6 2>/dev/null >>$instlog | |
235 | echo "---" 2>/dev/null >>$instlog | |
236 | /sbin/ifconfig -a 2>/dev/null >>$instlog | |
237 | ||
238 | echo "A log of this installation can be found here:" | |
239 | echo " $instlog" | |
240 | echo | |
241 | fi | |
2cc44e6c ER |
242 | EOF |
243 | chmod +x install.sh | |
244 | ||
245 | cd .flix-engine-installation-files | |
246 | %{__sed} -i -e ' | |
356dfb23 | 247 | # force installing initscript into buildroot without detection |
2cc44e6c | 248 | s,^initchk$,inittype=sysv1; INITDIR=$RPM_BUILD_ROOT/etc/rc.d/init.d, |
356dfb23 ER |
249 | |
250 | # cls is annoying | |
2cc44e6c | 251 | s,clear 2>\$nullout,#&, |
356dfb23 ER |
252 | |
253 | # we want to install examples, but not compile them in install | |
254 | # and somewhy --no-compile didn not work, had to specify also --no-modules, | |
255 | # which made no modules installed either, chicken-egg problem. | |
256 | s,COMPILEMODULES=y,COMPILEMODULES=n, | |
257 | s,INSTALLEDPERLFILES="n",INSTALLEDPERLFILES="y", | |
258 | s,INSTALLEDPHPFILES="n",INSTALLEDPHPFILES="y", | |
259 | s,INSTALLEDPYTHONFILES="n",INSTALLEDPYTHONFILES="y", | |
260 | s,INSTALLEDFLIXLIBRARIES="n",INSTALLEDFLIXLIBRARIES="y", | |
261 | s,INSTALLEDJAVAFILES="n",INSTALLEDJAVAFILES="y", | |
262 | ||
2cc44e6c ER |
263 | ' install.sh |
264 | ||
9d124465 ER |
265 | # remove backups from patching as we use globs to package files to buildroot |
266 | find flixsamples '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v | |
267 | ||
2cc44e6c ER |
268 | %build |
269 | cd .flix-engine-installation-files | |
e9b1b01f | 270 | PWD=$(pwd) |
27c0e367 | 271 | |
356dfb23 | 272 | ln -snf flixhdrs flixengine2 |
e9b1b01f | 273 | export C_INCLUDE_PATH=$PWD |
356dfb23 | 274 | |
a5747b91 | 275 | %ifarch %{x8664} |
e9b1b01f | 276 | export LD_LIBRARY_PATH=$PWD/testing/lib64 |
a5747b91 ER |
277 | ldconfig -n testing/lib64 |
278 | %else | |
e9b1b01f | 279 | export LD_LIBRARY_PATH=$PWD/flixlibs |
a5747b91 ER |
280 | ldconfig -n flixlibs |
281 | %endif | |
cbdbb5c8 | 282 | export LIBRARY_PATH=$LD_LIBRARY_PATH |
356dfb23 ER |
283 | |
284 | # PHP | |
285 | %{__make} -C flixphp \ | |
286 | CC="%{__cc}" \ | |
40472a64 | 287 | -f target.mk |
356dfb23 ER |
288 | |
289 | # Perl | |
290 | cd flixperl | |
291 | %{__perl} Makefile.PL \ | |
292 | INSTALLDIRS=vendor | |
293 | %{__make} \ | |
294 | CC="%{__cc}" \ | |
295 | OPTIMIZE="%{rpmcflags}" | |
296 | %{?with_tests:%{__make} test} | |
297 | cd .. | |
298 | ||
a5747b91 | 299 | %if %{with python} |
356dfb23 ER |
300 | cd flixpython |
301 | %{__python} setup.py build | |
302 | cd .. | |
a5747b91 | 303 | %endif |
356dfb23 | 304 | |
a5747b91 | 305 | %if %{with java} |
356dfb23 ER |
306 | %{__make} -C flixjava \ |
307 | CC="%{__cc}" \ | |
308 | -f target.mk | |
a5747b91 | 309 | %endif |
356dfb23 | 310 | |
27c0e367 ER |
311 | %install |
312 | rm -rf $RPM_BUILD_ROOT | |
e9f4366e | 313 | install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig} |
27c0e367 | 314 | |
2cc44e6c | 315 | ./install.sh \ |
27c0e367 ER |
316 | --prefix=$RPM_BUILD_ROOT%{_prefix} \ |
317 | --mandir=$RPM_BUILD_ROOT%{_mandir} \ | |
977f216d | 318 | --mencoderbin=$RPM_BUILD_ROOT%{_bindir} \ |
356dfb23 | 319 | --flixsamples=$RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} \ |
825446df | 320 | --pidfile=$RPM_BUILD_ROOT/var/run/flixd/flixd.pid \ |
593b9d17 | 321 | --authdir=$RPM_BUILD_ROOT%{_sysconfdir} \ |
27c0e367 ER |
322 | --just-install \ |
323 | --offline \ | |
324 | --yesireadtheon2license \ | |
2cc44e6c | 325 | --no-compile \ |
356dfb23 | 326 | --no-modules \ |
2cc44e6c | 327 | --no-init \ |
356dfb23 ER |
328 | --noprereqlibs |
329 | ||
e9f4366e ER |
330 | rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/flixengine |
331 | install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/flixd | |
332 | install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/flixd | |
3522469a | 333 | |
02d12547 ER |
334 | # mencoder-flixengine searches for codecs from /usr/lib/win32 and there's no |
335 | # way to override it by commandline arg or env var. | |
336 | ln -s codecs $RPM_BUILD_ROOT%{_prefix}/lib/win32 | |
337 | ||
356dfb23 | 338 | cd .flix-engine-installation-files |
d8688be2 | 339 | install lget on2_host_info $RPM_BUILD_ROOT%{_sbindir} |
a5747b91 | 340 | |
8c85be7f ER |
341 | # symlink without buildroot |
342 | ln -snf %{_docdir}/on2/flixengine/html/c/cli.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/c/README-cli.html | |
343 | ||
a5747b91 | 344 | # install bindings |
356dfb23 ER |
345 | # PHP |
346 | %{__make} -C flixphp \ | |
347 | install \ | |
dfab391b ER |
348 | PHPINST=%{php_extensiondir} \ |
349 | DESTDIR=$RPM_BUILD_ROOT \ | |
356dfb23 | 350 | -f target.mk |
9d8f979c ER |
351 | install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d |
352 | cat <<'EOF' > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/flixengine.ini | |
3522469a | 353 | ; Enable flixengine extension module |
9609f5dc | 354 | ;extension=flixengine2.so |
3522469a | 355 | EOF |
8c85be7f | 356 | # symlink without buildroot |
88012a45 | 357 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/php |
8c85be7f ER |
358 | ln -snf %{_docdir}/on2/flixengine/html/phpcgi.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/php/README-cgi.html |
359 | ln -snf %{_docdir}/on2/flixengine/html/phpcli.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/php/README-cli.html | |
356dfb23 ER |
360 | |
361 | # Perl | |
362 | cd flixperl | |
363 | %{__make} pure_install \ | |
364 | DESTDIR=$RPM_BUILD_ROOT | |
3d68873f | 365 | rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/On2/flixengine2/.packlist |
356dfb23 | 366 | cd .. |
8c85be7f | 367 | # symlink without buildroot |
88012a45 | 368 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/perl |
8c85be7f ER |
369 | ln -snf %{_docdir}/on2/flixengine/html/perlcgi.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/perl/README-cgi.html |
370 | ln -snf %{_docdir}/on2/flixengine/html/perlcli.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/perl/README-cli.html | |
356dfb23 | 371 | |
a5747b91 | 372 | %if %{with python} |
356dfb23 ER |
373 | cd flixpython |
374 | %{__python} setup.py install \ | |
375 | --optimize=2 \ | |
376 | --root=$RPM_BUILD_ROOT | |
3d68873f | 377 | %py_postclean |
356dfb23 | 378 | cd .. |
8c85be7f ER |
379 | # symlink without buildroot |
380 | ln -snf %{_docdir}/on2/flixengine/html/pythoncgi.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/python/README-cgi.html | |
381 | ln -snf %{_docdir}/on2/flixengine/html/pythoncli.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/python/README-cli.html | |
a5747b91 | 382 | %endif |
356dfb23 | 383 | |
fd1d00dc | 384 | rm -f $RPM_BUILD_ROOT%{_docdir}/on2/flixengine/javadoc |
a5747b91 | 385 | %if %{with java} |
356dfb23 ER |
386 | %{__make} -C flixjava \ |
387 | SOINST=$RPM_BUILD_ROOT%{_libdir} \ | |
388 | JARINST=$RPM_BUILD_ROOT%{_javadir} \ | |
389 | install \ | |
390 | -f target.mk | |
27c0e367 ER |
391 | |
392 | # symlink without buildroot | |
2cc44e6c | 393 | ln -snf %{_prefix}/src/flixmodules/flixjava/doc $RPM_BUILD_ROOT%{_docdir}/on2/flixengine/javadoc |
8c85be7f | 394 | ln -snf %{_docdir}/on2/flixengine/html/javacli.html $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/java/README-cli.html |
a5747b91 ER |
395 | %endif |
396 | ||
397 | %ifarch %{x8664} | |
398 | cp -a testing/lib64/libflixengine2.so* $RPM_BUILD_ROOT%{_libdir} | |
9d124465 ER |
399 | # flixd linked statically and other libs are 64 bit |
400 | rm -f $RPM_BUILD_ROOT%{_prefix}/lib/libflixengine2*.so* | |
a5747b91 | 401 | %endif |
2cc44e6c | 402 | |
6c2e0931 ER |
403 | # we have already newer soname for libavformat.so in ffmpeg-libs |
404 | # copy from bundled ones. | |
88012a45 ER |
405 | install supportlibs/libavformat.so.51.12.2 $RPM_BUILD_ROOT%{_prefix}/lib |
406 | install supportlibs/libavcodec.so.51.41.0 $RPM_BUILD_ROOT%{_prefix}/lib | |
407 | install supportlibs/libavutil.so.49.5.0 $RPM_BUILD_ROOT%{_prefix}/lib | |
9d124465 | 408 | |
977f216d ER |
409 | # avoid collision from mplayer package |
410 | mv $RPM_BUILD_ROOT%{_bindir}/mencoder{,-flixengine} | |
411 | ||
2cc44e6c | 412 | # do not put hardware fingerprint to rpm package |
593b9d17 ER |
413 | > $RPM_BUILD_ROOT%{_sysconfdir}/hostinfo |
414 | touch $RPM_BUILD_ROOT%{_sysconfdir}/flixengine.lic | |
825446df ER |
415 | install -d $RPM_BUILD_ROOT/var/run/flixd |
416 | install -d $RPM_BUILD_ROOT/var/log | |
417 | touch $RPM_BUILD_ROOT/var/log/flixd.log | |
27c0e367 ER |
418 | |
419 | # use poldek -e | |
420 | rm -f $RPM_BUILD_ROOT%{_sbindir}/flix-engine-uninstall.sh | |
421 | ||
e6f8792c ER |
422 | # make it somewhat easier to acquire license registration |
423 | install -d $RPM_BUILD_ROOT%{_sysconfdir} | |
424 | cat > $RPM_BUILD_ROOT%{_sysconfdir}/flixd-license.conf <<'EOF' | |
425 | FLIX_USERNAME='<username>' | |
426 | FLIX_SERIAL='<serial>' | |
427 | EOF | |
428 | ||
429 | install -d $RPM_BUILD_ROOT%{_sbindir} | |
430 | cat > $RPM_BUILD_ROOT%{_sbindir}/flixd-license-get <<'EOF' | |
431 | #!/bin/sh | |
29ef4ca7 ER |
432 | set -e |
433 | ||
e6f8792c | 434 | . %{_sysconfdir}/flixd-license.conf |
29ef4ca7 ER |
435 | if [ -z "$FLIX_USERNAME" -o -z "$FLIX_SERIAL" ]; then |
436 | echo >&2 "Please fill FLIX_USERNAME and FLIX_SERIAL!" | |
437 | exit 1 | |
438 | fi | |
e6f8792c | 439 | |
c9b33d7a | 440 | %{_sbindir}/lget -u "$FLIX_USERNAME" -s "$FLIX_SERIAL" -i %{_sysconfdir}/hostinfo -o %{_sysconfdir}/flixengine.lic -a 'On2FlixEngine/%{full_version} (%(uname -o))' |
29ef4ca7 ER |
441 | echo "" |
442 | echo "Serial registered and saved into %{_sysconfdir}/flixengine.lic" | |
443 | echo "" | |
444 | echo "Run \"/sbin/service flixd start\" to start flixd" | |
e6f8792c ER |
445 | EOF |
446 | ||
27c0e367 ER |
447 | %clean |
448 | rm -rf $RPM_BUILD_ROOT | |
449 | ||
825446df ER |
450 | %pre |
451 | %groupadd -g 179 flixd | |
452 | %useradd -u 179 -g flixd -c "On2 Flixd" flixd | |
27c0e367 | 453 | |
2cc44e6c | 454 | %post |
f8494186 | 455 | /sbin/ldconfig |
4e158386 | 456 | /sbin/chkconfig --add flixd |
825446df ER |
457 | if [ ! -f /var/log/flixd.log ]; then |
458 | touch /var/log/flixd.log | |
459 | chown root:flixd /var/log/flixd.log | |
460 | chmod 660 /var/log/flixd.log | |
461 | fi | |
593b9d17 ER |
462 | if [ ! -s %{_sysconfdir}/hostinfo ]; then |
463 | %{_sbindir}/on2_host_info > %{_sysconfdir}/hostinfo | |
d3d7034a | 464 | %banner -e %{name} <<EOF |
c91cf73e ER |
465 | Put your username and serial key to %{_sysconfdir}/flixd-license.conf |
466 | and invoke: | |
467 | %{_sbindir}/flixd-license-get | |
468 | ||
469 | You can register evaluation demo at <http://flix.on2.com/demos/>. | |
d3d7034a | 470 | EOF |
2cc44e6c | 471 | fi |
4e158386 | 472 | %service flixd restart |
44a0377b ER |
473 | |
474 | %preun | |
475 | if [ "$1" = "0" ]; then | |
4e158386 ER |
476 | %service -q flixd stop |
477 | /sbin/chkconfig --del flixd | |
44a0377b | 478 | fi |
2cc44e6c | 479 | |
825446df | 480 | %postun |
f8494186 | 481 | /sbin/ldconfig |
825446df ER |
482 | if [ "$1" = "0" ]; then |
483 | %userremove flixd | |
484 | %groupremove flixd | |
485 | fi | |
486 | ||
487 | %post libs -p /sbin/ldconfig | |
488 | %postun libs -p /sbin/ldconfig | |
489 | ||
3522469a | 490 | %post -n php-flixengine |
9d8f979c | 491 | %php_webserver_restart |
3522469a ER |
492 | |
493 | %postun -n php-flixengine | |
494 | if [ "$1" = 0 ]; then | |
9d8f979c | 495 | %php_webserver_restart |
3522469a ER |
496 | fi |
497 | ||
27c0e367 ER |
498 | %files |
499 | %defattr(644,root,root,755) | |
a5747b91 | 500 | %doc doc/* |
fd1d00dc | 501 | %{?with_java:%exclude %{_docdir}/on2/flixengine/javadoc} |
593b9d17 | 502 | %dir %{_sysconfdir} |
e6f8792c | 503 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/flixd-license.conf |
593b9d17 ER |
504 | %attr(640,root,flixd) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/hostinfo |
505 | %attr(640,root,flixd) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/flixengine.lic | |
3e997564 | 506 | %attr(755,root,root) %{_prefix}/lib/libavformat.so.*.*.* |
6c2e0931 ER |
507 | %attr(755,root,root) %{_prefix}/lib/libavcodec.so.*.*.* |
508 | %attr(755,root,root) %{_prefix}/lib/libavutil.so.*.*.* | |
27c0e367 | 509 | %attr(755,root,root) %{_sbindir}/flixd |
e6f8792c | 510 | %attr(755,root,root) %{_sbindir}/flixd-license-get |
27c0e367 ER |
511 | %attr(755,root,root) %{_sbindir}/lget |
512 | %attr(755,root,root) %{_sbindir}/on2_host_info | |
4e158386 | 513 | %attr(754,root,root) /etc/rc.d/init.d/flixd |
e9f4366e | 514 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/flixd |
02d12547 | 515 | %{_prefix}/lib/win32 |
e6f8792c | 516 | |
27c0e367 | 517 | %{_mandir}/man8/flixd.8* |
825446df ER |
518 | %dir %attr(771,root,flixd) /var/run/flixd |
519 | %ghost %attr(660,root,flixd) /var/log/flixd.log | |
977f216d | 520 | %attr(755,root,root) %{_bindir}/mencoder-flixengine |
27c0e367 ER |
521 | |
522 | %files libs | |
523 | %defattr(644,root,root,755) | |
a5747b91 | 524 | %ifarch %{x8664} |
2cc44e6c | 525 | %attr(755,root,root) %{_libdir}/libflixengine2.so.*.* |
9d124465 ER |
526 | %else |
527 | %attr(755,root,root) %{_libdir}/libflixengine2.so.*.* | |
528 | %attr(755,root,root) %{_libdir}/libflixengine2_core.so.*.* | |
bccbb380 ER |
529 | %attr(755,root,root) %ghost %{_libdir}/libflixengine2.so.0 |
530 | %attr(755,root,root) %ghost %{_libdir}/libflixengine2_core.so.0 | |
a5747b91 | 531 | %endif |
36dd0daf | 532 | %dir %{_examplesdir}/%{name}-%{version} |
27c0e367 ER |
533 | |
534 | %files devel | |
535 | %defattr(644,root,root,755) | |
a5747b91 | 536 | %ifarch %{x8664} |
356dfb23 | 537 | %attr(755,root,root) %{_libdir}/libflixengine2.so |
9d124465 ER |
538 | %else |
539 | %attr(755,root,root) %{_libdir}/libflixengine2.so | |
540 | %attr(755,root,root) %{_libdir}/libflixengine2_core.so | |
a5747b91 | 541 | %endif |
27c0e367 | 542 | %{_includedir}/flixengine2 |
356dfb23 | 543 | %{_examplesdir}/%{name}-%{version}/c |
3d68873f | 544 | |
a5747b91 | 545 | %if %{with java} |
3d68873f ER |
546 | %files -n java-flixengine |
547 | %defattr(644,root,root,755) | |
e2a8ac61 | 548 | %doc %{_docdir}/on2/flixengine/javadoc |
5b5210df ER |
549 | # perhaps these should be: |
550 | # /usr/%{_lib}/jvm/java-sun-1.6.0/jre/lib/%{arch}/libflixengine2_jni.so | |
551 | # /usr/%{_lib}/jvm/java-sun-1.6.0/jre/lib/ext/flixengine2.jar | |
3522469a | 552 | %attr(755,root,root) %{_libdir}/libflixengine2_jni.so |
3d68873f | 553 | %{_javadir}/flixengine2.jar |
36dd0daf | 554 | %{_examplesdir}/%{name}-%{version}/java |
a5747b91 | 555 | %endif |
3d68873f ER |
556 | |
557 | %files -n perl-flixengine | |
558 | %defattr(644,root,root,755) | |
559 | %dir %{perl_vendorarch}/On2 | |
560 | %{perl_vendorarch}/On2/flixengine2.pm | |
561 | %dir %{perl_vendorarch}/auto/On2 | |
562 | %dir %{perl_vendorarch}/auto/On2/flixengine2 | |
563 | %{perl_vendorarch}/auto/On2/flixengine2/flixengine2.bs | |
564 | %attr(755,root,root) %{perl_vendorarch}/auto/On2/flixengine2/flixengine2.so | |
36dd0daf | 565 | %{_examplesdir}/%{name}-%{version}/perl |
3d68873f ER |
566 | |
567 | %files -n php-flixengine | |
568 | %defattr(644,root,root,755) | |
9d8f979c ER |
569 | %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/flixengine.ini |
570 | %attr(755,root,root) %{php_extensiondir}/flixengine2.so | |
dfab391b | 571 | %{_prefix}/lib/flixengine2.php |
36dd0daf | 572 | %{_examplesdir}/%{name}-%{version}/php |
3d68873f | 573 | |
a5747b91 | 574 | %if %{with python} |
3d68873f ER |
575 | %files -n python-flixengine |
576 | %defattr(644,root,root,755) | |
3522469a | 577 | %attr(755,root,root) %{py_sitedir}/_flixengine2.so |
3d68873f ER |
578 | %{py_sitedir}/flixengine2.pyc |
579 | %{py_sitedir}/flixengine2.pyo | |
36dd0daf | 580 | %{_examplesdir}/%{name}-%{version}/python |
a5747b91 | 581 | %endif |
fd1d00dc | 582 | |
593b9d17 | 583 | %files apidocs |
fd1d00dc | 584 | %defattr(644,root,root,755) |
593b9d17 | 585 | %{_docdir}/on2 |