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