2 # This file and its contents are supplied under the terms of the
3 # Common Development and Distribution License ("CDDL"), version 1.0.
4 # You may only use this file in accordance with the terms of version
7 # A full copy of the text of the CDDL should have accompanied this
8 # source. A copy of the CDDL is also available via the Internet at
9 # http://www.illumos.org/license/CDDL.
13 # Copyright 2015 Aurelien Larcher
14 # Copyright 2022-2023 Niklas Poslovski
17 USE_DEFAULT_TEST_TRANSFORMS
= yes
18 include ..
/..
/..
/make-rules
/shared-macros.mk
21 COMPONENT_VERSION
= 3.0.20
23 COMPONENT_SUMMARY
= Cross-platform media player and streaming server
24 COMPONENT_SRC
= $(COMPONENT_NAME
)-$(COMPONENT_VERSION
)
25 COMPONENT_ARCHIVE
= $(COMPONENT_SRC
).
tar.xz
26 COMPONENT_ARCHIVE_HASH
= sha256
:adc7285b4d2721cddf40eb5270cada2aaa10a334cb546fd55a06353447ba29b5
27 COMPONENT_ARCHIVE_URL
= https
://download.videolan.org
/pub
/videolan
/vlc
/$(COMPONENT_VERSION
)/$(COMPONENT_ARCHIVE
)
28 COMPONENT_PROJECT_URL
= https
://www.videolan.org
/vlc
29 COMPONENT_FMRI
= media
/vlc
30 COMPONENT_CLASSIFICATION
= Applications
/Sound and Video
31 COMPONENT_LICENSE
= GPLv2.0
,LGPLv2.1
33 # We need to force compilation with ffmpeg 6
34 # https://code.videolan.org/videolan/vlc/-/issues/28605
37 include $(WS_MAKE_RULES
)/encumbered.mk
38 include $(WS_MAKE_RULES
)/common.mk
42 # Required for POSIX recvmsg/sendmsg
43 LDFLAGS
+= -lnsl
-lsocket
45 # Required for stack protector
48 # Required OpenGL extensions
49 CFLAGS
+= -I
/usr
/include/mesa
-DGLEXT_PROTOTYPES
51 # Define to ensure consistency
52 CFLAGS
+= -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS
=64
53 CXXFLAGS
+= -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS
=64
56 PKG_CONFIG_PATH
+=:$(QT5_PKG_CONFIG_PATH
)
58 COMPONENT_PREP_ACTION
= ( cd
$(@D
); autoreconf
)
60 CONFIGURE_ENV
+= LUAC
=$(USRBINDIR64
)/luac
62 CONFIGURE_OPTIONS
+= --enable-shared
63 CONFIGURE_OPTIONS
+= --disable-static
66 CONFIGURE_OPTIONS
+= --enable-sout
67 CONFIGURE_OPTIONS
+= --enable-lua
68 CONFIGURE_OPTIONS
+= --enable-vlm
69 CONFIGURE_OPTIONS
+= --enable-addonmanagermodules
70 CONFIGURE_OPTIONS
+= --disable-live555
71 CONFIGURE_OPTIONS
+= --disable-dc1394
72 CONFIGURE_OPTIONS
+= --disable-dv1394
73 CONFIGURE_OPTIONS
+= --disable-linsys
74 CONFIGURE_OPTIONS
+= --enable-dvdread
75 CONFIGURE_OPTIONS
+= --enable-dvdnav
76 CONFIGURE_OPTIONS
+= --enable-bluray
77 CONFIGURE_OPTIONS
+= --disable-opencv
78 CONFIGURE_OPTIONS
+= --disable-smbclient
79 CONFIGURE_OPTIONS
+= --enable-sftp
80 CONFIGURE_OPTIONS
+= --disable-v4l2
81 CONFIGURE_OPTIONS
+= --disable-decklink
82 CONFIGURE_OPTIONS
+= --disable-vcd
83 CONFIGURE_OPTIONS
+= --enable-libcddb
84 CONFIGURE_OPTIONS
+= --enable-screen
85 CONFIGURE_OPTIONS
+= --disable-vnc
86 CONFIGURE_OPTIONS
+= --disable-freerdp
87 CONFIGURE_OPTIONS
+= --disable-realrtsp
90 CONFIGURE_OPTIONS
+= --enable-dvbpsi
91 CONFIGURE_OPTIONS
+= --disable-gme
92 CONFIGURE_OPTIONS
+= --disable-sid
93 CONFIGURE_OPTIONS
+= --enable-ogg
94 CONFIGURE_OPTIONS
+= --disable-shout
95 CONFIGURE_OPTIONS
+= --enable-matroska
96 CONFIGURE_OPTIONS
+= --disable-mod
97 CONFIGURE_OPTIONS
+= --enable-mpc
100 CONFIGURE_OPTIONS
+= --disable-wma-fixed
101 CONFIGURE_OPTIONS
+= --disable-shine
102 CONFIGURE_OPTIONS
+= --disable-mmal
103 CONFIGURE_OPTIONS
+= --disable-crystalhd
104 CONFIGURE_OPTIONS
+= --enable-mad
105 CONFIGURE_OPTIONS
+= --disable-merge-ffmpeg
106 CONFIGURE_OPTIONS
+= --disable-gst-decode
107 CONFIGURE_OPTIONS
+= --enable-avcodec
108 CONFIGURE_OPTIONS
+= --disable-libva
109 CONFIGURE_OPTIONS
+= --disable-dxva2
110 CONFIGURE_OPTIONS
+= --enable-avformat
111 CONFIGURE_OPTIONS
+= --enable-swscale
112 CONFIGURE_OPTIONS
+= --disable-postproc
113 CONFIGURE_OPTIONS
+= --enable-faad
114 CONFIGURE_OPTIONS
+= --enable-dxva2
115 CONFIGURE_OPTIONS
+= --enable-twolame
116 CONFIGURE_OPTIONS
+= --enable-dxva2
117 CONFIGURE_OPTIONS
+= --enable-dca
118 CONFIGURE_OPTIONS
+= --enable-flac
119 CONFIGURE_OPTIONS
+= --enable-libmpeg2
120 CONFIGURE_OPTIONS
+= --enable-vorbis
121 CONFIGURE_OPTIONS
+= --enable-speex
122 CONFIGURE_OPTIONS
+= --enable-opus
123 CONFIGURE_OPTIONS
+= --enable-theora
124 CONFIGURE_OPTIONS
+= --enable-schroedinger
125 CONFIGURE_OPTIONS
+= --enable-png
126 CONFIGURE_OPTIONS
+= --enable-jpeg
127 CONFIGURE_OPTIONS
+= --disable-x262
128 CONFIGURE_OPTIONS
+= --enable-x264
129 CONFIGURE_OPTIONS
+= --enable-x265
130 CONFIGURE_OPTIONS
+= --disable-mfx
131 CONFIGURE_OPTIONS
+= --disable-fluidsynth
132 CONFIGURE_OPTIONS
+= --disable-zvbi
133 CONFIGURE_OPTIONS
+= --enable-telx
134 CONFIGURE_OPTIONS
+= --enable-libass
135 CONFIGURE_OPTIONS
+= --disable-kate
136 CONFIGURE_OPTIONS
+= --disable-tiger
139 CONFIGURE_OPTIONS
+= --with-x
140 CONFIGURE_OPTIONS
+= --enable-xcb
141 CONFIGURE_OPTIONS
+= --enable-xvideo
142 CONFIGURE_OPTIONS
+= --enable-vdpau
143 CONFIGURE_OPTIONS
+= --enable-sdl-image
144 CONFIGURE_OPTIONS
+= --enable-freetype
145 CONFIGURE_OPTIONS
+= --enable-fribidi
146 CONFIGURE_OPTIONS
+= --enable-fontconfig
147 CONFIGURE_OPTIONS
+= --enable-svg
148 CONFIGURE_OPTIONS
+= --enable-svgdec
149 CONFIGURE_OPTIONS
+= --disable-caca
150 CONFIGURE_OPTIONS
+= --disable-dav1d
151 CONFIGURE_OPTIONS
+= --disable-kva
154 CONFIGURE_OPTIONS
+= --enable-pulse
155 CONFIGURE_OPTIONS
+= --disable-jack
156 CONFIGURE_OPTIONS
+= --enable-samplerate
157 CONFIGURE_OPTIONS
+= --disable-kai
158 CONFIGURE_OPTIONS
+= --disable-chromaprint
159 CONFIGURE_OPTIONS
+= --disable-spatialaudio
162 CONFIGURE_OPTIONS
+= --enable-qt
163 CONFIGURE_OPTIONS
+= --enable-skins2
164 CONFIGURE_OPTIONS
+= --disable-libtar
165 CONFIGURE_OPTIONS
+= --disable-ncurses
166 CONFIGURE_OPTIONS
+= --disable-lirc
169 CONFIGURE_OPTIONS
+= --disable-goom
170 CONFIGURE_OPTIONS
+= --disable-projectm
171 CONFIGURE_OPTIONS
+= --disable-vsxu
174 CONFIGURE_OPTIONS
+= --disable-microdns
175 CONFIGURE_OPTIONS
+= --disable-udev
176 CONFIGURE_OPTIONS
+= --enable-mtp
177 CONFIGURE_OPTIONS
+= --enable-upnp
180 CONFIGURE_OPTIONS
+= --enable-libxml2
181 CONFIGURE_OPTIONS
+= --enable-libgcrypt
182 CONFIGURE_OPTIONS
+= --enable-gnutls
183 CONFIGURE_OPTIONS
+= --enable-taglib
184 CONFIGURE_OPTIONS
+= --enable-notify
187 QT5_ROOT
= $(QT5_BASEDIR
)
188 QT5_RPATH
= $(GCC_LIBDIR
):$(QT5_LIBDIR
)
189 QT5_PLUGIN
= /usr
/lib
/$(MACH64
)/vlc
/plugins
/gui
/libqt_plugin.so
191 COMPONENT_POST_INSTALL_ACTION
= \
192 /usr
/bin
/elfedit
-e
'dyn:value -s RUNPATH "$(QT5_RPATH)"' $(PROTO_DIR
)$(QT5_PLUGIN
) &&\
193 /usr
/bin
/elfedit
-e
'dyn:value -s RPATH "$(QT5_RPATH)"' $(PROTO_DIR
)$(QT5_PLUGIN
)
195 # Auto-generated dependencies
196 REQUIRED_PACKAGES
+= $(GCC_RUNTIME_PKG
)
197 REQUIRED_PACKAGES
+= $(GXX_RUNTIME_PKG
)
198 REQUIRED_PACKAGES
+= $(JPEG_IMPLEM_PKG
)
199 REQUIRED_PACKAGES
+= SUNWcs
200 REQUIRED_PACKAGES
+= audio
/faad2
201 REQUIRED_PACKAGES
+= audio
/mpg123
202 REQUIRED_PACKAGES
+= audio
/twolame
203 REQUIRED_PACKAGES
+= codec
/flac
204 REQUIRED_PACKAGES
+= codec
/libtheora
205 REQUIRED_PACKAGES
+= codec
/speex
206 REQUIRED_PACKAGES
+= developer
/ffmpeg-6
207 REQUIRED_PACKAGES
+= image
/library
/libjpeg-turbo
208 REQUIRED_PACKAGES
+= image
/library
/libpng16
209 REQUIRED_PACKAGES
+= image
/library
/librsvg
210 REQUIRED_PACKAGES
+= image
/library
/sdl-image
211 REQUIRED_PACKAGES
+= library
/audio
/liba52
212 REQUIRED_PACKAGES
+= library
/audio
/libdca
213 REQUIRED_PACKAGES
+= library
/audio
/libmad
214 REQUIRED_PACKAGES
+= library
/audio
/libmpcdec
215 REQUIRED_PACKAGES
+= library
/audio
/pulseaudio
216 REQUIRED_PACKAGES
+= library
/audio
/soxr
217 REQUIRED_PACKAGES
+= library
/audio
/taglib
218 REQUIRED_PACKAGES
+= library
/c
++/abseil-cpp
219 REQUIRED_PACKAGES
+= library
/c
++/harfbuzz
220 REQUIRED_PACKAGES
+= library
/c
++/protobuf
221 REQUIRED_PACKAGES
+= library
/desktop
/cairo
222 REQUIRED_PACKAGES
+= library
/desktop
/gdk-pixbuf
223 REQUIRED_PACKAGES
+= library
/desktop
/gtk3
224 REQUIRED_PACKAGES
+= library
/ffmpeg-6
225 REQUIRED_PACKAGES
+= library
/fribidi
226 REQUIRED_PACKAGES
+= library
/glib2
227 REQUIRED_PACKAGES
+= library
/gnutls-3
228 REQUIRED_PACKAGES
+= library
/libarchive
229 REQUIRED_PACKAGES
+= library
/libebml
230 REQUIRED_PACKAGES
+= library
/libidn
231 REQUIRED_PACKAGES
+= library
/libmtp
232 REQUIRED_PACKAGES
+= library
/libnotify
233 REQUIRED_PACKAGES
+= library
/libogg
234 REQUIRED_PACKAGES
+= library
/libsamplerate
235 REQUIRED_PACKAGES
+= library
/libsecret
236 REQUIRED_PACKAGES
+= library
/libssh2
237 REQUIRED_PACKAGES
+= library
/libvorbis
238 REQUIRED_PACKAGES
+= library
/libxml2
239 REQUIRED_PACKAGES
+= library
/opus
240 REQUIRED_PACKAGES
+= library
/qt5
241 REQUIRED_PACKAGES
+= library
/sdl
242 REQUIRED_PACKAGES
+= library
/security
/libgpg-error
243 REQUIRED_PACKAGES
+= library
/speexdsp
244 REQUIRED_PACKAGES
+= library
/video
/libass
245 REQUIRED_PACKAGES
+= library
/video
/libbluray
246 REQUIRED_PACKAGES
+= library
/video
/libdvbpsi
247 REQUIRED_PACKAGES
+= library
/video
/libdvdnav
248 REQUIRED_PACKAGES
+= library
/video
/libdvdread
249 REQUIRED_PACKAGES
+= library
/video
/libmatroska
250 REQUIRED_PACKAGES
+= library
/video
/libmpeg2
251 REQUIRED_PACKAGES
+= library
/video
/libschroedinger
252 REQUIRED_PACKAGES
+= library
/video
/libvpx
253 REQUIRED_PACKAGES
+= library
/video
/x264
254 REQUIRED_PACKAGES
+= library
/video
/x265
255 REQUIRED_PACKAGES
+= library
/zlib
256 REQUIRED_PACKAGES
+= runtime
/lua
257 REQUIRED_PACKAGES
+= shell/ksh93
258 REQUIRED_PACKAGES
+= system
/library
259 REQUIRED_PACKAGES
+= system
/library
/fontconfig
260 REQUIRED_PACKAGES
+= system
/library
/freetype-2
261 REQUIRED_PACKAGES
+= system
/library
/libdbus
262 REQUIRED_PACKAGES
+= system
/library
/libupnp
263 REQUIRED_PACKAGES
+= system
/library
/math
264 REQUIRED_PACKAGES
+= system
/library
/security
/libgcrypt
265 REQUIRED_PACKAGES
+= system
/network
/avahi
266 REQUIRED_PACKAGES
+= x11
/library
/libx11
267 REQUIRED_PACKAGES
+= x11
/library
/libxcb
268 REQUIRED_PACKAGES
+= x11
/library
/libxext
269 REQUIRED_PACKAGES
+= x11
/library
/libxinerama
270 REQUIRED_PACKAGES
+= x11
/library
/libxpm
271 REQUIRED_PACKAGES
+= x11
/library
/xcb-util-keysyms