Marcel Telka
2024-04-06 c028ccd8bf35334f2185c77b3d42e6cd4e78af1f
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
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source.  A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
 
#
# Copyright 2015 Aurelien Larcher
# Copyright 2022-2023 Niklas Poslovski
#
 
USE_DEFAULT_TEST_TRANSFORMS= yes
include ../../../make-rules/shared-macros.mk
 
COMPONENT_NAME= vlc
COMPONENT_VERSION= 3.0.20
COMPONENT_REVISION= 1
COMPONENT_SUMMARY= Cross-platform media player and streaming server
COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.xz
COMPONENT_ARCHIVE_HASH=    sha256:adc7285b4d2721cddf40eb5270cada2aaa10a334cb546fd55a06353447ba29b5
COMPONENT_ARCHIVE_URL=    https://download.videolan.org/pub/videolan/vlc/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
COMPONENT_PROJECT_URL=    https://www.videolan.org/vlc
COMPONENT_FMRI= media/vlc
COMPONENT_CLASSIFICATION= Applications/Sound and Video
COMPONENT_LICENSE= GPLv2.0,LGPLv2.1
 
include $(WS_MAKE_RULES)/encumbered.mk
include $(WS_MAKE_RULES)/common.mk
 
PATH= $(PATH.gnu)
 
# Required for POSIX recvmsg/sendmsg
LDFLAGS += -lnsl -lsocket
 
# Required for stack protector
LDFLAGS += -lssp
 
# Required OpenGL extensions
CFLAGS += -I/usr/include/mesa -DGLEXT_PROTOTYPES
 
# Define to ensure consistency
CFLAGS += -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
CXXFLAGS += -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
 
# Use Qt5
PKG_CONFIG_PATH +=:$(QT5_LIBDIR)/pkgconfig
 
COMPONENT_PREP_ACTION = ( cd $(@D); autoreconf )
 
CONFIGURE_ENV += LUAC=$(USRBINDIR64)/luac
 
CONFIGURE_OPTIONS += --enable-shared
CONFIGURE_OPTIONS += --disable-static
 
# Input
CONFIGURE_OPTIONS += --enable-sout
CONFIGURE_OPTIONS += --enable-lua
CONFIGURE_OPTIONS += --enable-vlm
CONFIGURE_OPTIONS += --enable-addonmanagermodules
CONFIGURE_OPTIONS += --disable-live555
CONFIGURE_OPTIONS += --disable-dc1394
CONFIGURE_OPTIONS += --disable-dv1394
CONFIGURE_OPTIONS += --disable-linsys
CONFIGURE_OPTIONS += --enable-dvdread
CONFIGURE_OPTIONS += --enable-dvdnav
CONFIGURE_OPTIONS += --enable-bluray
CONFIGURE_OPTIONS += --disable-opencv
CONFIGURE_OPTIONS += --disable-smbclient
CONFIGURE_OPTIONS += --enable-sftp
CONFIGURE_OPTIONS += --disable-v4l2
CONFIGURE_OPTIONS += --disable-decklink
CONFIGURE_OPTIONS += --disable-vcd
CONFIGURE_OPTIONS += --enable-libcddb
CONFIGURE_OPTIONS += --enable-screen
CONFIGURE_OPTIONS += --disable-vnc
CONFIGURE_OPTIONS += --disable-freerdp
CONFIGURE_OPTIONS += --disable-realrtsp
 
# Mux/Demux
CONFIGURE_OPTIONS += --enable-dvbpsi
CONFIGURE_OPTIONS += --disable-gme
CONFIGURE_OPTIONS += --disable-sid
CONFIGURE_OPTIONS += --enable-ogg
CONFIGURE_OPTIONS += --disable-shout
CONFIGURE_OPTIONS += --enable-matroska
CONFIGURE_OPTIONS += --disable-mod
CONFIGURE_OPTIONS += --enable-mpc
 
# Codec
CONFIGURE_OPTIONS += --disable-wma-fixed
CONFIGURE_OPTIONS += --disable-shine
CONFIGURE_OPTIONS += --disable-mmal
CONFIGURE_OPTIONS += --disable-crystalhd
CONFIGURE_OPTIONS += --enable-mad
CONFIGURE_OPTIONS += --disable-merge-ffmpeg
CONFIGURE_OPTIONS += --disable-gst-decode
CONFIGURE_OPTIONS += --enable-avcodec
CONFIGURE_OPTIONS += --disable-libva
CONFIGURE_OPTIONS += --disable-dxva2
CONFIGURE_OPTIONS += --enable-avformat
CONFIGURE_OPTIONS += --enable-swscale
CONFIGURE_OPTIONS += --disable-postproc
CONFIGURE_OPTIONS += --enable-faad
CONFIGURE_OPTIONS += --enable-dxva2
CONFIGURE_OPTIONS += --enable-twolame
CONFIGURE_OPTIONS += --enable-dxva2
CONFIGURE_OPTIONS += --enable-dca
CONFIGURE_OPTIONS += --enable-flac
CONFIGURE_OPTIONS += --enable-libmpeg2
CONFIGURE_OPTIONS += --enable-vorbis
CONFIGURE_OPTIONS += --enable-speex
CONFIGURE_OPTIONS += --enable-opus
CONFIGURE_OPTIONS += --enable-theora
CONFIGURE_OPTIONS += --enable-schroedinger
CONFIGURE_OPTIONS += --enable-png
CONFIGURE_OPTIONS += --enable-jpeg
CONFIGURE_OPTIONS += --disable-x262
CONFIGURE_OPTIONS += --enable-x264
CONFIGURE_OPTIONS += --enable-x265
CONFIGURE_OPTIONS += --disable-mfx
CONFIGURE_OPTIONS += --disable-fluidsynth
CONFIGURE_OPTIONS += --disable-zvbi
CONFIGURE_OPTIONS += --enable-telx
CONFIGURE_OPTIONS += --enable-libass
CONFIGURE_OPTIONS += --disable-kate
CONFIGURE_OPTIONS += --disable-tiger
 
# Video
CONFIGURE_OPTIONS += --with-x
CONFIGURE_OPTIONS += --enable-xcb
CONFIGURE_OPTIONS += --enable-xvideo
CONFIGURE_OPTIONS += --enable-vdpau
CONFIGURE_OPTIONS += --enable-sdl-image
CONFIGURE_OPTIONS += --enable-freetype
CONFIGURE_OPTIONS += --enable-fribidi
CONFIGURE_OPTIONS += --enable-fontconfig
CONFIGURE_OPTIONS += --enable-svg
CONFIGURE_OPTIONS += --enable-svgdec
CONFIGURE_OPTIONS += --disable-caca
CONFIGURE_OPTIONS += --disable-dav1d
CONFIGURE_OPTIONS += --disable-kva
 
# Audio
CONFIGURE_OPTIONS += --enable-pulse
CONFIGURE_OPTIONS += --disable-jack
CONFIGURE_OPTIONS += --enable-samplerate
CONFIGURE_OPTIONS += --disable-kai
CONFIGURE_OPTIONS += --disable-chromaprint
CONFIGURE_OPTIONS += --disable-spatialaudio
 
# Interface
CONFIGURE_OPTIONS += --enable-qt
CONFIGURE_OPTIONS += --enable-skins2
CONFIGURE_OPTIONS += --disable-libtar
CONFIGURE_OPTIONS += --disable-ncurses
CONFIGURE_OPTIONS += --disable-lirc
 
# Filters
CONFIGURE_OPTIONS += --disable-goom
CONFIGURE_OPTIONS += --disable-projectm
CONFIGURE_OPTIONS += --disable-vsxu
 
# Services
CONFIGURE_OPTIONS += --disable-microdns
CONFIGURE_OPTIONS += --disable-udev
CONFIGURE_OPTIONS += --enable-mtp
CONFIGURE_OPTIONS += --enable-upnp
 
# Misc
CONFIGURE_OPTIONS += --enable-libxml2
CONFIGURE_OPTIONS += --enable-libgcrypt
CONFIGURE_OPTIONS += --enable-gnutls
CONFIGURE_OPTIONS += --enable-taglib
CONFIGURE_OPTIONS += --enable-notify
 
 
QT5_ROOT = $(QT5_BASEDIR)
QT5_RPATH = $(GCC_LIBDIR):$(QT5_LIBDIR)
QT5_PLUGIN = /usr/lib/$(MACH64)/vlc/plugins/gui/libqt_plugin.so
 
COMPONENT_POST_INSTALL_ACTION = \
    /usr/bin/elfedit -e 'dyn:value -s RUNPATH "$(QT5_RPATH)"' $(PROTO_DIR)$(QT5_PLUGIN) &&\
        /usr/bin/elfedit -e 'dyn:value -s RPATH   "$(QT5_RPATH)"' $(PROTO_DIR)$(QT5_PLUGIN)
 
unexport SHELLOPTS
 
# Auto-generated dependencies
REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG)
REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG)
REQUIRED_PACKAGES += $(JPEG_IMPLEM_PKG)
REQUIRED_PACKAGES += SUNWcs
REQUIRED_PACKAGES += audio/faad2
REQUIRED_PACKAGES += audio/mpg123
REQUIRED_PACKAGES += audio/twolame
REQUIRED_PACKAGES += codec/flac
REQUIRED_PACKAGES += codec/libtheora
REQUIRED_PACKAGES += codec/speex
REQUIRED_PACKAGES += image/library/libjpeg-turbo
REQUIRED_PACKAGES += image/library/libpng16
REQUIRED_PACKAGES += image/library/librsvg
REQUIRED_PACKAGES += image/library/sdl-image
REQUIRED_PACKAGES += library/audio/liba52
REQUIRED_PACKAGES += library/audio/libdca
REQUIRED_PACKAGES += library/audio/libmad
REQUIRED_PACKAGES += library/audio/libmpcdec
REQUIRED_PACKAGES += library/audio/pulseaudio
REQUIRED_PACKAGES += library/audio/soxr
REQUIRED_PACKAGES += library/audio/taglib
REQUIRED_PACKAGES += library/c++/abseil-cpp
REQUIRED_PACKAGES += library/c++/harfbuzz
REQUIRED_PACKAGES += library/c++/protobuf
REQUIRED_PACKAGES += library/desktop/cairo
REQUIRED_PACKAGES += library/desktop/gdk-pixbuf
REQUIRED_PACKAGES += library/desktop/gtk3
REQUIRED_PACKAGES += library/fribidi
REQUIRED_PACKAGES += library/glib2
REQUIRED_PACKAGES += library/gnutls-3
REQUIRED_PACKAGES += library/libarchive
REQUIRED_PACKAGES += library/libebml
REQUIRED_PACKAGES += library/libidn
REQUIRED_PACKAGES += library/libmtp
REQUIRED_PACKAGES += library/libnotify
REQUIRED_PACKAGES += library/libogg
REQUIRED_PACKAGES += library/libsamplerate
REQUIRED_PACKAGES += library/libsecret
REQUIRED_PACKAGES += library/libssh2
REQUIRED_PACKAGES += library/libvorbis
REQUIRED_PACKAGES += library/libxml2
REQUIRED_PACKAGES += library/opus
REQUIRED_PACKAGES += library/qt5
REQUIRED_PACKAGES += library/sdl
REQUIRED_PACKAGES += library/security/libgpg-error
REQUIRED_PACKAGES += library/speexdsp
REQUIRED_PACKAGES += library/video/libass
REQUIRED_PACKAGES += library/video/libbluray
REQUIRED_PACKAGES += library/video/libdvbpsi
REQUIRED_PACKAGES += library/video/libdvdnav
REQUIRED_PACKAGES += library/video/libdvdread
REQUIRED_PACKAGES += library/video/libmatroska
REQUIRED_PACKAGES += library/video/libmpeg2
REQUIRED_PACKAGES += library/video/libschroedinger
REQUIRED_PACKAGES += library/video/libvpx
REQUIRED_PACKAGES += library/video/x264
REQUIRED_PACKAGES += library/video/x265
REQUIRED_PACKAGES += library/zlib
REQUIRED_PACKAGES += runtime/lua
REQUIRED_PACKAGES += shell/ksh93
REQUIRED_PACKAGES += system/library
REQUIRED_PACKAGES += system/library/fontconfig
REQUIRED_PACKAGES += system/library/freetype-2
REQUIRED_PACKAGES += system/library/libdbus
REQUIRED_PACKAGES += system/library/libupnp
REQUIRED_PACKAGES += system/library/math
REQUIRED_PACKAGES += system/library/security/libgcrypt
REQUIRED_PACKAGES += system/network/avahi
REQUIRED_PACKAGES += video/ffmpeg
REQUIRED_PACKAGES += x11/library/libx11
REQUIRED_PACKAGES += x11/library/libxcb
REQUIRED_PACKAGES += x11/library/libxext
REQUIRED_PACKAGES += x11/library/libxinerama
REQUIRED_PACKAGES += x11/library/libxpm
REQUIRED_PACKAGES += x11/library/xcb-util-keysyms