mirror of
https://github.com/dslm4515/BMLFS.git
synced 2025-08-03 16:40:25 +00:00
78 lines
3.4 KiB
Bash
78 lines
3.4 KiB
Bash
#! /bin/bash
|
|
|
|
# GStreamer Base Plug-ins
|
|
# Source: https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.24.4.tar.xz
|
|
#
|
|
# $BUILD = Directory to temporarily install
|
|
# $PKGS = Directory to store built packages
|
|
#
|
|
# DEPS
|
|
# Required: gstreamer
|
|
# Recommended: alsa-lib, CDParanoia-III (for building the CDDA plugin), gobject-introspection,
|
|
# Recommended: ISO Codes, libgudev, libogg, libtheora, libvorbis, wayland-protocols,
|
|
# Recommended: orc, and Xorg Libraries
|
|
# Optional: gl-headers
|
|
|
|
# if optimizing with GCC:
|
|
export CFLAGS="-march=native -pipe "
|
|
export CFLAGS+="-O3 -ffat-lto-objects -flto=auto "
|
|
export CXXFLAGS=$CFLAGS
|
|
export LDFLAGS="-flto=auto -Wl,-O2 -Wl,--as-needed "
|
|
|
|
# First fix a build failure caused by a change in meson-0.58.0:
|
|
#sed -i 's|implicit_include_directories : false||' gst-libs/gst/gl/meson.build
|
|
|
|
# For no Xorg & GLX (Pure Wayland)
|
|
# export NOX_CONFIG='-Dgl_platform=egl -Dx11=disabled -Dgl_winsys="wayland,egl" -Dgl_api=gles2'
|
|
|
|
meson setup --prefix=/usr \
|
|
-Dbuildtype=release \
|
|
-Dpackage-origin=https://github.com/dslm4515/BMLFS \
|
|
-Dpackage-name="GStreamer 1.22.9 BMLFS" \
|
|
-Dexamples=disabled --wrap-mode=nodownload $NOX_CONFIG OUT &&
|
|
read -p "Compile?" && ninja -C OUT -j2 &&
|
|
|
|
sudo -S DESTDIR=$BUILD ninja -C OUT install &&
|
|
sudo -S mkdir -pv /BMAN/install && \
|
|
sudo -S mkdir -pv /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------------------------------------------------------|
|
|
gst-plugins-base: gst-plugins-base (a set of GStreamer plugins)
|
|
gst-plugins-base:
|
|
gst-plugins-base: GStreamer Base Plug-ins is a well-groomed and well-maintained
|
|
gst-plugins-base: collection of GStreamer plug-ins and elements, spanning the
|
|
gst-plugins-base: range of possible types of elements one would want to write
|
|
gst-plugins-base: for GStreamer. It also contains helper libraries and base
|
|
gst-plugins-base: classes useful for writing elements. A wide range of video
|
|
gst-plugins-base: and audio decoders, encoders, and filters are included.
|
|
gst-plugins-base:
|
|
gst-plugins-base: gst-plugins-base is a an essential exemplary set of plugins
|
|
gst-plugins-base:
|
|
EOF
|
|
sudo -S mv -v /tmp/slack-desc install/ &&
|
|
sudo -S makepkg -l y -c n $PKGS/gst-plugins-base-1.24.4-$PSUFFIX &&
|
|
cd /BMAN
|
|
cat > /tmp/slack-desc << "EOF"
|
|
gst-plugins-base-doc: Manuals for gst-plugins-base (a set of GStreamer plugins)
|
|
gst-plugins-base-doc:
|
|
gst-plugins-base-doc: A well-groomed and well-maintained collection of GStreamer plug-ins
|
|
gst-plugins-base-doc: and elements, spanning the range of possible types of elements
|
|
gst-plugins-base-doc: one would want to write for GStreamer.
|
|
gst-plugins-base-doc:
|
|
gst-plugins-base-doc: gst-plugins-base is a an essential exemplary set of plugins
|
|
gst-plugins-base-doc:
|
|
EOF
|
|
sudo -S mv -v /tmp/slack-desc install/ &&
|
|
sudo -S makepkg -l y -c n $PKGS/gst-plugins-base-doc-1.24.4-$NOPSUFFIX
|
|
sudo -S rm -rf /BMAN/* ${BUILD}/*
|