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