]> git.pld-linux.org Git - packages/gpac.git/blob - gpac.spec
a03bbdd5b1dd14772c5d6eaeb7898d5ecb68b858
[packages/gpac.git] / gpac.spec
1 # TODO:
2 # - Platinum UPnP: http://www.plutinosoft.com/platinum
3 # - AVCap: http://libavcap.sourceforge.net/
4 # - OpenSVCDecoder: http://opensvcdecoder.sourceforge.net/
5 # - libfreenect: http://openkinect.org/wiki/Main_Page
6 #
7 # Conditional build:
8 %bcond_with     amr             # AMR-NB and AMR-WB (floating-point) support
9 %bcond_without  directfb        # DirectFB support
10 %bcond_without  faad            # AAC decoding support
11 %bcond_without  ffmpeg          # ffmpeg support
12 %bcond_without  freetype        # freetype support
13 %bcond_without  jpeg            # JPEG support
14 %bcond_with     js              # JavaScript support
15 %bcond_without  mad             # MP3 support
16 %bcond_without  png             # PNG support
17 %bcond_without  xvid            # xvid support
18 %bcond_without  wx              # wxWidgets support
19 #
20 %define snap    20141007
21 #
22 Summary:        GPAC - an implementation of the MPEG-4 Systems standard (ISO/IEC 14496-1)
23 Summary(pl.UTF-8):      GPAC - implementacja standardu MPEG-4 Systems (ISO/IEC 14496-1)
24 Name:           gpac
25 Version:        0.5.0
26 Release:        14.%{snap}.1
27 License:        LGPL v2+
28 Group:          Applications/Multimedia
29 # Source0:      http://downloads.sourceforge.net/gpac/%{name}-%{version}.tar.gz
30 Source0:        %{name}-%{snap}.tar.bz2
31 # Source0-md5:  9e37b324e490d3118622d77bf238cb16
32 Patch0:         %{name}-install.patch
33 Patch1:         %{name}-xulrunner.patch
34 Patch2:         %{name}-amr.patch
35 Patch3:         %{name}-install-is-not-clean.patch
36 Patch4:         %{name}-flags.patch
37 Patch5:         wxWidgets3.patch
38 Patch6:         %{name}-js.patch
39 Patch7:         %{name}-apps.patch
40 URL:            http://gpac.sourceforge.net/
41 %{?with_directfb:BuildRequires: DirectFB-devel}
42 BuildRequires:  OpenGL-GLU-devel
43 BuildRequires:  SDL-devel
44 BuildRequires:  a52dec-libs-devel
45 BuildRequires:  alsa-lib-devel >= 0.9
46 %{?with_amr:BuildRequires:      amrnb-devel}
47 %{?with_amr:BuildRequires:      amrwb-devel}
48 %{?with_faad:BuildRequires:     faad2-devel}
49 %{?with_ffmpeg:BuildRequires:   ffmpeg-devel >= 0.6}
50 %{?with_freetype:BuildRequires: freetype-devel}
51 %{?with_wx:BuildRequires:       gtk+2-devel >= 2:2.20.1}
52 BuildRequires:  jack-audio-connection-kit-devel
53 %{?with_js:BuildRequires:       js-devel < 2:1.8.5}
54 %{?with_jpeg:BuildRequires:     libjpeg-devel}
55 %{?with_mad:BuildRequires:      libmad-devel}
56 BuildRequires:  libogg-devel
57 %{?with_png:BuildRequires:      libpng-devel}
58 BuildRequires:  libtheora-devel
59 BuildRequires:  libvorbis-devel
60 BuildRequires:  libxml2-devel
61 BuildRequires:  openjpeg-devel
62 BuildRequires:  openssl-devel
63 BuildRequires:  pkgconfig
64 BuildRequires:  pulseaudio-devel
65 BuildRequires:  rpmbuild(macros) >= 1.357
66 BuildRequires:  sed >= 4.0
67 BuildRequires:  unzip
68 %{?with_wx:BuildRequires:       wxGTK2-unicode-devel >= 2.6.0}
69 BuildRequires:  xmlrpc-c-server-devel
70 BuildRequires:  xorg-lib-libXext-devel
71 BuildRequires:  xorg-lib-libXv-devel
72 BuildRequires:  xulrunner-devel >= 2:9.0.0
73 %{?with_xvid:BuildRequires:     xvid-devel}
74 BuildRequires:  zlib-devel
75 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
76
77 %description
78 GPAC is an implementation of the MPEG-4 Systems standard (ISO/IEC
79 14496-1) developed from scratch in ANSI C.
80
81 The main development goal is to provide a clean (a.k.a. readable by as
82 many people as possible), small and flexible alternative to the MPEG-4
83 Systems reference software (known as IM1 and distributed in ISO/IEC
84 14496-5). The MPEG-4 Reference software is indeed a very large piece
85 of software, designed to verify the standard rather than provide a
86 small, production-stable software. GPAC is written in ANSI C for
87 portability reasons (embedded platforms and DSPs) with a simple goal:
88 keep the memory footprint as low as possible. The project will at term
89 provide player(s), systems encoders and publishing tools for content
90 distribution.
91
92 %description -l pl.UTF-8
93 GPAC to implementacja standardu MPEG-4 Systems (ISO/IEC 14496-1)
94 stworzona od zera w ANSI C.
95
96 Głównym celem tworzenia jej jest dostarczenie czystej (tzn. czytelnej
97 dla jak największej liczby ludzi), małej i elastycznej alternatywy dla
98 wzorcowego oprogramowania MPEG-4 Systems (znanego jako IM1 i
99 rozprowadzanego w ISO/IEC 14496-5). Wzorcowe oprogramowanie MPEG-4
100 jest bardzo dużą porcją kodu, zaprojektowaną raczej do zweryfikowania
101 standardu niż dostarczenia małej, stabilnej wersji produkcyjnej. GPAC
102 jest pisany w ANSI C ze względu na przenośność (platformy wbudowane i
103 DSP) z prostym celem: wymagać tak mało pamięci, jak to tylko możliwe.
104 Projekt docelowo dostarczy odtwarzacz(e), kodery systemowe i narzędzia
105 do publikacji w celu dystrybucji materiałów.
106
107 %package devel
108 Summary:        Header files for GPAC library
109 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki GPAC
110 Group:          Development/Libraries
111 Requires:       %{name} = %{version}-%{release}
112
113 %description devel
114 Header files for GPAC library.
115
116 %description devel -l pl.UTF-8
117 Pliki nagłówkowe biblioteki GPAC.
118
119 %package static
120 Summary:        Static GPAC library
121 Summary(pl.UTF-8):      Statyczna biblioteka GPAC
122 Group:          Development/Libraries
123 Requires:       %{name}-devel = %{version}-%{release}
124
125 %description static
126 Static GPAC library.
127
128 %description static -l pl.UTF-8
129 Statyczna biblioteka GPAC.
130
131 %package gui
132 Summary:        wxWidgets-based GUI for GPAC
133 Summary(pl.UTF-8):      Oparty na wxWidgets graficzny interfejs do GPAC
134 Group:          X11/Applications/Multimedia
135 Requires:       %{name} = %{version}-%{release}
136
137 %description gui
138 Osmo4 - wxWidgets-based GUI for GPAC.
139
140 %description gui -l pl.UTF-8
141 Osmo4 - oparty na wxWidgets graficzny interfejs do GPAC.
142
143 %package -n browser-plugin-%{name}
144 Summary:        GPAC browser plugin
145 Summary(pl.UTF-8):      Wtyczka GPAC do przegląderek WWW
146 Group:          X11/Libraries
147 Requires:       %{name} = %{version}-%{release}
148 Requires:       browser-plugins >= 2.0
149 Requires:       browser-plugins(%{_target_base_arch})
150
151 %description -n browser-plugin-%{name}
152 GPAC plugin for Netscape-compatible WWW browsers.
153
154 %description -n browser-plugin-%{name} -l pl.UTF-8
155 Wtyczka GPAC dla przeglądarek WWW zgodnych z Netscape.
156
157 %prep
158 %setup -q -n %{name}
159 %patch0 -p1
160 %patch1 -p1
161 %patch2 -p1
162 %patch3 -p1
163 %patch4 -p1
164 %patch5 -p1
165 %patch6 -p1
166 %patch7 -p1
167
168 sed -i -e 's/wx-config/wx-gtk2-unicode-config/' configure
169 chmod a+x configure
170
171 %build
172 # not autoconf configure
173 ./configure \
174         --prefix=%{_prefix} \
175         --libdir=%{_lib} \
176         --mandir=%{_mandir} \
177         --X11-path=/usr \
178         --cc="%{__cc}" \
179         --cpp="%{__cxx}" \
180         --disable-opt \
181         %{!?with_wx:--disable-wx} \
182         %{?with_amr:--enable-amr} \
183         --enable-joystick \
184         --enable-pic \
185         --extra-cflags="%{rpmcflags}" \
186         --extra-ldflags="%{rpmldflags}" \
187         --mozdir=%{_browserpluginsdir} \
188         %{!?with_faad:--use-faad=no} \
189         %{!?with_ffmpeg:--use-ffmpeg=no} \
190         %{!?with_freetype:--use-ft=no} \
191         %{!?with_jpeg:--use-jpeg=no} \
192         %{!?with_js:--use-js=no} \
193         %{!?with_mad:--use-mad=no} \
194         %{!?with_png:--use-png=no} \
195         %{!?with_xvid:--use-xvid=no} \
196         --xulsdk-path="/usr/include/xulrunner -I/usr/include/nspr"
197
198 %{!?with_directfb: sed -i 's/CONFIG_DIRECTFB.*/CONFIG_DIRECTFB=no/' config.mak}
199
200 %{__make} -j1
201
202 %install
203 rm -rf $RPM_BUILD_ROOT
204 install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
205
206 %{__make} -j1 install install-lib \
207         DESTDIR=$RPM_BUILD_ROOT
208
209 %{__make} -j1 -C applications install \
210         DESTDIR=$RPM_BUILD_ROOT \
211         MOZILLA_DIR=$RPM_BUILD_ROOT%{_browserpluginsdir}
212
213 %clean
214 rm -rf $RPM_BUILD_ROOT
215
216 %post   -p /sbin/ldconfig
217 %postun -p /sbin/ldconfig
218
219 %post -n browser-plugin-%{name}
220 %update_browser_plugins
221
222 %postun -n browser-plugin-%{name}
223 if [ "$1" = 0 ]; then
224         %update_browser_plugins
225 fi
226
227 %files
228 %defattr(644,root,root,755)
229 %doc AUTHORS BUGS Changelog README TODO
230 %attr(755,root,root) %{_bindir}/MP4Box
231 %attr(755,root,root) %{_bindir}/MP4Client
232 %attr(755,root,root) %{_libdir}/libgpac.so.*.*.*
233 %attr(755,root,root) %ghost %{_libdir}/libgpac.so.3
234 %dir %{_libdir}/gpac
235 %attr(755,root,root) %{_libdir}/gpac/gm_*.so
236 %{_datadir}/gpac
237 %{_mandir}/man1/gpac.1*
238 %{_mandir}/man1/mp4box.1*
239 %{_mandir}/man1/mp4client.1*
240
241 %files devel
242 %defattr(644,root,root,755)
243 %attr(755,root,root) %{_libdir}/libgpac.so
244 %{_includedir}/gpac
245 %{_pkgconfigdir}/gpac.pc
246
247 %files static
248 %defattr(644,root,root,755)
249 %{_libdir}/libgpac_static.a
250
251 %if %{with wx}
252 %files gui
253 %defattr(644,root,root,755)
254 %attr(755,root,root) %{_bindir}/DashCast
255 %attr(755,root,root) %{_bindir}/Osmo4
256 %endif
257
258 %files -n browser-plugin-%{name}
259 %defattr(644,root,root,755)
260 %attr(755,root,root) %{_browserpluginsdir}/nposmozilla.so
261 %{_browserpluginsdir}/nposmozilla.xpt
This page took 0.073154 seconds and 2 git commands to generate.