blob: 6b6c344b3dcc18c6099bebe364399c1959dc9258 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
|
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=vlc
pkgver=2.2.0
_pkgver=${pkgver/_/-}
_ver=${_pkgver%[a-z]}
pkgrel=1
pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player"
triggers="vlc-libs.trigger=/usr/lib/vlc/plugins"
pkgusers="vlc"
pkggroups="vlc"
url="http://www.videolan.org/vlc/"
arch="all"
license="GPL2+"
subpackages="$pkgname-dev
$pkgname-doc
$pkgname-qt
$pkgname-xorg
$pkgname-daemon
$pkgname-libs
$pkgname-plugins
$pkgname-plugins-access:plugins_access
$pkgname-plugins-access_output:plugins_access_output
$pkgname-plugins-audio_filter:plugins_audio_filter
$pkgname-plugins-audio_mixer:plugins_audio_mixer
$pkgname-plugins-audio_output:plugins_audio_output
$pkgname-plugins-codec:plugins_codec
$pkgname-plugins-control:plugins_control
$pkgname-plugins-demux:plugins_demux
$pkgname-plugins-gui:plugins_gui
$pkgname-plugins-lua:plugins_lua
$pkgname-plugins-meta_engine:plugins_meta_engine
$pkgname-plugins-misc:plugins_misc
$pkgname-plugins-mux:plugins_mux
$pkgname-plugins-notify:plugins_notify
$pkgname-plugins-packetizer:plugins_packetizer
$pkgname-plugins-services_discovery:plugins_services_discovery
$pkgname-plugins-stream_filter:plugins_stream_filter
$pkgname-plugins-stream_out:plugins_stream_out
$pkgname-plugins-text_renderer:plugins_text_renderer
$pkgname-plugins-video_chroma:plugins_video_chroma
$pkgname-plugins-video_filter:plugins_video_filter
$pkgname-plugins-video_output:plugins_video_output
$pkgname-plugins-visualization:plugins_visualization"
depends="ttf-dejavu $pkgname-plugins"
makedepends="
a52dec-dev
alsa-lib-dev
automake
autoconf
avahi-dev
libtool
dbus-dev
faad2-dev
ffmpeg-dev
flac-dev
freetype-dev
fribidi-dev
gtk+-dev
libbluray-dev>=0.2.1 libbluray-dev<20100000
libavc1394-dev
libcddb-dev
libdc1394-dev>=2.1.0
libdvbpsi-dev
libdvdnav-dev
libdvdread-dev
libgcrypt-dev
libice-dev
libmad-dev
libmatroska-dev
libmpeg2-dev
libnotify-dev
libogg-dev
libraw1394-dev>=2.0.1
libshout-dev
libsm-dev
libtheora-dev
libva-dev
libvdpau-dev
libvorbis-dev
libx11-dev
libxext-dev
libxinerama-dev
libxml2-dev
libxpm-dev
libxv-dev
live-media-dev>=2012.01.26
lua5.2-dev
ncurses-dev
mesa-dev
pkgconfig
qt-dev
sdl-dev
speex-dev
sysfsutils-dev
taglib-dev
udev-dev
v4l-utils-dev
x264-dev
xcb-util-renderutil-dev
xcb-util-keysyms-dev
xdg-utils
"
source="http://download.videolan.org/pub/videolan/$pkgname/${_ver}/$pkgname-$_pkgver.tar.xz
fix-waitpid-usage.patch
omxil-rpi-codecs.patch
vlc-libs.trigger"
_builddir="$srcdir"/$pkgname-$_ver
prepare() {
cd "$_builddir"
for i in $source; do
case $i in
*.patch)
msg "Applying $i"
patch -p1 -i "$srcdir"/$i || return 1
;;
esac;
done
sed -i -e "/^libxscreensaver_plugin_la_SOURCES/s/^/#/" modules/misc/Modules.am
./bootstrap
}
build() {
local _arch_opts=
cd "$_builddir"
sed -e 's:/usr/share/fonts/truetype/freefont/FreeSerifBold.ttf:/usr/share/fonts/TTF/DejaVuSerif-Bold.ttf:' \
-i modules/text_renderer/freetype.c
# -fpermissive is needed due to zlib 1.2.6 changing
# void* to gzFile on gz*() functions
export CFLAGS="$CFLAGS -D_GNU_SOURCE"
export CXXFLAGS="$CXXFLAGS -fpermissive"
case "$CARCH" in
arm*) _arch_opts="--enable-omxil --enable-omxil-vout --enable-rpi-omxil" ;;
esac
LUA=lua5.2 \
LUAC=luac5.2 \
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--disable-mmx \
--disable-sse \
--disable-nls \
--disable-optimizations \
--disable-rpath \
--enable-a52 \
--enable-avcodec \
--enable-avformat \
--enable-bluray \
--enable-dbus \
--enable-dc1394 \
--enable-dvbpsi \
--enable-dvdread \
--enable-dvdnav \
--enable-faad \
--enable-flac \
--enable-httpd \
--enable-libcddb \
--enable-libva \
--enable-live555 \
--enable-merge-ffmpeg \
--enable-ncurses \
--enable-realrtsp \
--enable-sdl \
--enable-shout \
--enable-skins2 \
--enable-speex \
--enable-sout \
--enable-taglib \
--enable-theora \
--enable-v4l2 \
--enable-vdpau \
--enable-vlm \
--enable-vorbis \
--enable-wma-fixed \
--enable-x264 \
--enable-xvideo \
$_arch_opts \
|| return 1
make || return 1
}
package() {
cd "$_builddir"
make DESTDIR="$pkgdir" install || return 1
# for res in 16 32 48 128; do
# install -D -m644 share/vlc${res}x${res}.png \
# "$pkgdir"/usr/share/icons/hicolor/${res}x${res}/apps/vlc.png || return 1
# done
# delete cache as it's autocreated by trigger
rm -rf "$pkgdir"/usr/lib/vlc/plugins/plugins.dat
# delete unneeded mozilla and kde support files
rm -rf "$pkgdir"/usr/lib/mozilla
rm -rf "$pkgdir"/usr/share/kde4
find "$pkgdir" -name '*.la' -delete
}
plugins() {
pkgdesc="$pkgname all plugins meta package"
depends="$pkgname-plugins-access
$pkgname-plugins-access_output
$pkgname-plugins-audio_filter
$pkgname-plugins-audio_mixer
$pkgname-plugins-audio_output
$pkgname-plugins-codec
$pkgname-plugins-control
$pkgname-plugins-demux
$pkgname-plugins-gui
$pkgname-plugins-lua
$pkgname-plugins-meta_engine
$pkgname-plugins-misc
$pkgname-plugins-mux
$pkgname-plugins-notify
$pkgname-plugins-packetizer
$pkgname-plugins-services_discovery
$pkgname-plugins-stream_filter
$pkgname-plugins-stream_out
$pkgname-plugins-text_renderer
$pkgname-plugins-video_chroma
$pkgname-plugins-video_filter
$pkgname-plugins-video_output
$pkgname-plugins-visualization"
mkdir -p "$subpkgdir"
}
_mv() {
local dir=${1%/*}
mkdir -p "$subpkgdir"/$dir
mv "$1" "$subpkgdir"/$dir/
}
qt() {
pkgdesc="Qt frontend for VLC"
depends="vlc-xorg=$pkgver-r$pkgrel"
cd "$pkgdir"
# scan for elf files that directly or indirectly depends on
# libQt* libraries
cd "$pkgdir"
for i in $(find . -type f ); do
if ldd $i 2>/dev/null | grep -q "libQt"; then
_mv "$i" || return 1
fi
done
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/qvlc \
"$subpkgdir"/usr/bin/
}
xorg() {
pkgdesc="Video LAN X.org support"
depends="xdg-utils vlc=$pkgver-r$pkgrel"
# scan for elf files that directly or indirectly depends on
# libX* libraries
cd "$pkgdir"
for i in $(find . -type f ); do
if ldd $i 2>/dev/null | grep -E -q "libX|x11|libxcb|libGL"; then
echo $i | grep libavcodec_plugin.so || _mv "$i" || return 1
fi
done
mkdir -p "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/svlc \
"$subpkgdir"/usr/bin
mkdir -p "$subpkgdir"/usr/share/vlc
mv "$pkgdir"/usr/share/applications \
"$pkgdir"/usr/share/icons \
"$subpkgdir"/usr/share/
mv "$pkgdir"/usr/share/vlc/skins2 \
"$subpkgdir"/usr/share/vlc
}
daemon() {
pkgdesc="Support for running VLC as a daemon"
install="vlc-daemon.pre-install"
arch="noarch"
depends="vlc=$pkgver-r$pkgrel"
mkdir -p "$subpkgdir"
cd "$pkgdir"
install -D -m755 ../../vlc.initd $subpkgdir/etc/init.d/vlc
install -D -m664 ../../vlc.confd $subpkgdir/etc/conf.d/vlc
install -d -o vlc -g vlc "$subpkgdir"/var/log/vlc
}
libs() {
depends=
mkdir -p "$subpkgdir"/usr/lib/vlc
mv "$pkgdir"/usr/lib/vlc/vlc-cache-gen \
"$subpkgdir"/usr/lib/vlc/
default_libs
}
_mv_plugins() {
local plugin=$1
pkgdesc="$pkgname $plugin plugin"
depends=
mkdir -p "$subpkgdir"/usr/lib/vlc/plugins
mv "$pkgdir"/usr/lib/vlc/plugins/"$plugin" \
"$subpkgdir"/usr/lib/vlc/plugins
}
plugins_access() { _mv_plugins access; }
plugins_access_output() { _mv_plugins access_output; }
plugins_audio_filter() { _mv_plugins audio_filter; }
plugins_audio_mixer() { _mv_plugins audio_mixer; }
plugins_audio_output() { _mv_plugins audio_output; }
plugins_codec() { _mv_plugins codec; }
plugins_control() { _mv_plugins control; }
plugins_demux() { _mv_plugins demux; }
plugins_gui() { _mv_plugins gui; }
plugins_lua() { _mv_plugins lua; }
plugins_meta_engine() { _mv_plugins meta_engine; }
plugins_misc() { _mv_plugins misc; }
plugins_mux() { _mv_plugins mux; }
plugins_notify() { _mv_plugins notify; }
plugins_packetizer() { _mv_plugins packetizer; }
plugins_services_discovery() { _mv_plugins services_discovery; }
plugins_stream_filter() { _mv_plugins stream_filter; }
plugins_stream_out() { _mv_plugins stream_out; }
plugins_text_renderer() { _mv_plugins text_renderer; }
plugins_video_chroma() { _mv_plugins video_chroma; }
plugins_video_filter() { _mv_plugins video_filter; }
plugins_video_output() { _mv_plugins video_output; }
plugins_visualization() { _mv_plugins visualization; }
md5sums="faeceb614bf3946e5f90ef0d1f51db45 vlc-2.2.0.tar.xz
b28925fdf3d1b0bd13e3af89668995a4 fix-waitpid-usage.patch
b90177830fe33b93849915752eb957ce omxil-rpi-codecs.patch
dd899a9926ad84db9446d92890a5aa3e vlc-libs.trigger"
sha256sums="5e0a27e248c47da723a696420aca3a4dd15cc3ed8cc81618d3f1dc8661b25517 vlc-2.2.0.tar.xz
4f017a932d4177ba838ebd7bb0e36d8606103e62519805adff81e5edbda41026 fix-waitpid-usage.patch
27e8f960ca091216b491980a6ffd4e35b28f2091677231ba1d317fc81b6ee039 omxil-rpi-codecs.patch
1c93af2feb217a06f6adc3cd51def8f00eea431f9d26ace7b90c377f7e85fc7a vlc-libs.trigger"
sha512sums="41162ff2dcc35edb47721c5a0f5d1346a0bcf3099c641e317ca1ce50baadeec3eef38f10355396a82e029474f6decd1e4355bbf218cadb795ccad3ff81a585bb vlc-2.2.0.tar.xz
680cfa3eed5501ba6f06c51eae508204f4c77d2bdd07eead1a3da3939b433abfe84025d133e7a1c7a869e4ffac374bd5eba2bd3dd242ec4645e1d1c6122d0ffb fix-waitpid-usage.patch
e13e398b7bfd977f6e099bcb6cf8dc5cd5bad6dea3eff715881826246dc4329468846084aff2576de2b7fd28d3f06e7c327a6e4511a28d22e5cd198a81146c89 omxil-rpi-codecs.patch
b67b6e21e9d4027aef1006e6057f9ba8e65ce3895b08f7b911b1675cff9bc423f64ee2c187c584860e9e5d4635a30408a7781add9694d9bba753eac37f357406 vlc-libs.trigger"
|