Files
BMLFS/build-scripts/vlc.build
2024-02-16 12:35:57 -06:00

79 lines
3.0 KiB
Bash

#! /bin/bash
# VLC
# Source: https://download.videolan.org/vlc/3.0.20/vlc-3.0.20.tar.xz
#
# $BUILD = Directory to temporarily install
# $PKGS = Directory to store built packages
#
# DEPS
# Required: libplacebo
# Recommended: gst-plugins-ugly a52dec libgcrypt libmad alsa-lib
# Recommended: desktop-file-utils ffmpeg lua52 qt5-qtsvg
# Optional: dbus libidn libssh2 gst-plugins-bad gst-plugins-good
# NOTE: VLC still expect headers from libplacebo, even if support for
# is disabled
# NOTE: Fails to build with clang-17. Use GCC.
# NOTE: Stripping libraries of debug symbols causes vlc not to load
patch -Np1 -i ../patches/vlc-alpine/check-headless.patch
patch -Np1 -i ../patches/vlc-alpine/disable-sub-autodetect-fuzzy-1-test.patch
patch -Np1 -i ../patches/vlc-alpine/fribidi_allow_deprecated.patch
patch -Np1 -i ../patches/vlc-alpine/libplacebo-5.patch
patch -Np1 -i ../patches/vlc-alpine/omxil-rpi-codecs.patch
NOCONFIGURE=1 ./bootstrap &&
CFLAGS=" -fcommon -D_GNU_SOURCE" CXXFLAGS="-fcommon" \
BUILDCC="gcc -std=c99" \
./configure --prefix=/usr \
--enable-x264 \
--enable-merge-ffmpeg \
--disable-v4l2 --disable-libplacebo # incompatible atm
$BUILDTRUPLE &&
read -p "Compile?" && make -j2 &&
sudo -S make DESTDIR=$BUILD docdir=/usr/share/doc/vlc-3.0.20 install &&
sudo -S mkdir -pv /BMAN/install /BMAN/usr/share && \
sudo -S mv $BUILD/usr/share/doc /BMAN/usr/share/ && \
sudo -S mv $BUILD/usr/share/man /BMAN/usr/share/ && \
cd $BUILD && sudo -S mkdir -v ${BUILD}/install &&
cat > /tmp/slack-desc << "EOF"
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in. You must
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
vlc: vlc (VLC media player)
vlc:
vlc: VLC media player is a free and open source media player and multi-
vlc: media framework written by the VideoLAN project. VLC is a portable
vlc: multimedia player, encoder, and streamer supporting many audio and
vlc: video codecs and file formats as well as DVDs, VCDs, and various
vlc: streaming protocols. It is able to stream over networks and to
vlc: transcode multimedia files and save them into various formats.
vlc:
vlc: homepage: http://www.videolan.org/vlc/
vlc:
EOF
sudo -S mv -v /tmp/slack-desc install/ &&
sudo -S makepkg -l y -c n $PKGS/vlc-3.0.20-$PSUFFIX && \
cd /BMAN && \
cat > /tmp/slack-desc << "EOF"
vlc-doc: Manuals for vlc (VLC media player)
vlc-doc:
vlc-doc: A media player is a free and open source media player and multi-
vlc-doc: media framework written by the VideoLAN project.
vlc-doc:
vlc-doc: http://www.videolan.org/vlc/
vlc-doc:
EOF
sudo -S mv -v /tmp/slack-desc install/ && \
sudo -S makepkg -l y -c n $PKGS/vlc-doc-3.0.20-$NOPSUFFIX && \
sudo -S rm -rf ${BUILD}/* /BMAN/*