Link against SDL 2.0.10 and reduce dependencies
This commit is contained in:
3
.gitmodules
vendored
3
.gitmodules
vendored
@@ -4,3 +4,6 @@
|
|||||||
[submodule "nv-codec-headers"]
|
[submodule "nv-codec-headers"]
|
||||||
path = nv-codec-headers
|
path = nv-codec-headers
|
||||||
url = https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
|
url = https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
|
||||||
|
[submodule "SDL2"]
|
||||||
|
path = SDL2
|
||||||
|
url = https://github.com/spurious/SDL-mirror.git
|
||||||
|
|||||||
@@ -3,13 +3,14 @@ FROM amd64/debian:buster
|
|||||||
RUN set -ex && \
|
RUN set -ex && \
|
||||||
export DEBIAN_FRONTEND=noninteractive && \
|
export DEBIAN_FRONTEND=noninteractive && \
|
||||||
apt-get update && \
|
apt-get update && \
|
||||||
apt-get install -y g++ make devscripts fakeroot debhelper git nasm && \
|
apt-get install -y g++ make devscripts fakeroot debhelper git nasm libgbm-dev libdrm-dev libsdl2-ttf-dev && \
|
||||||
apt-get install -y libssl-dev qtbase5-dev qtquickcontrols2-5-dev qtdeclarative5-dev libqt5svg5-dev libgl1-mesa-dev libegl1-mesa-dev libxkbcommon-dev wayland-protocols libopus-dev libva-dev libvdpau-dev libsdl2-dev libsdl2-ttf-dev && \
|
apt-get install -y --no-install-recommends libssl-dev qtbase5-dev qtquickcontrols2-5-dev qtdeclarative5-dev libqt5svg5-dev libgl1-mesa-dev libegl1-mesa-dev libxkbcommon-dev wayland-protocols libopus-dev libva-dev libvdpau-dev && \
|
||||||
apt-get clean -y && \
|
apt-get clean -y && \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
COPY FFmpeg /opt/FFmpeg
|
COPY FFmpeg /opt/FFmpeg
|
||||||
COPY nv-codec-headers /opt/nv-codec-headers
|
COPY nv-codec-headers /opt/nv-codec-headers
|
||||||
|
COPY SDL2 /opt/SDL2
|
||||||
|
|
||||||
COPY scripts/build-deps.sh /opt/scripts/
|
COPY scripts/build-deps.sh /opt/scripts/
|
||||||
RUN /bin/bash -c /opt/scripts/build-deps.sh
|
RUN /bin/bash -c /opt/scripts/build-deps.sh
|
||||||
|
|||||||
@@ -6,12 +6,13 @@ RUN set -ex && \
|
|||||||
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61 && \
|
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61 && \
|
||||||
apt-get update && \
|
apt-get update && \
|
||||||
apt-get install -y libnvmpi1.0.0 && \
|
apt-get install -y libnvmpi1.0.0 && \
|
||||||
apt-get install -y g++ make devscripts debhelper git nasm && \
|
apt-get install -y g++ make devscripts fakeroot debhelper git nasm libgbm-dev libdrm-dev libsdl2-ttf-dev && \
|
||||||
apt-get install -y --no-install-recommends libssl-dev qtbase5-dev qtquickcontrols2-5-dev qtdeclarative5-dev libqt5svg5-dev libgl1-mesa-dev libegl1-mesa-dev libxkbcommon-dev wayland-protocols libopus-dev libva-dev libvdpau-dev libsdl2-dev libsdl2-ttf-dev && \
|
apt-get install -y --no-install-recommends libssl-dev qtbase5-dev qtquickcontrols2-5-dev qtdeclarative5-dev libqt5svg5-dev libgl1-mesa-dev libegl1-mesa-dev libxkbcommon-dev libopus-dev && \
|
||||||
apt-get clean -y && \
|
apt-get clean -y && \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
COPY FFmpeg /opt/FFmpeg
|
COPY FFmpeg /opt/FFmpeg
|
||||||
|
COPY SDL2 /opt/SDL2
|
||||||
|
|
||||||
COPY scripts/build-deps.sh /opt/scripts/
|
COPY scripts/build-deps.sh /opt/scripts/
|
||||||
COPY scripts/build-package.sh /opt/scripts/
|
COPY scripts/build-package.sh /opt/scripts/
|
||||||
|
|||||||
@@ -7,12 +7,13 @@ RUN set -ex && \
|
|||||||
echo "deb http://archive.raspberrypi.org/debian/ buster main" >> /etc/apt/sources.list && \
|
echo "deb http://archive.raspberrypi.org/debian/ buster main" >> /etc/apt/sources.list && \
|
||||||
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 82B129927FA3303E && \
|
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 82B129927FA3303E && \
|
||||||
apt-get update && \
|
apt-get update && \
|
||||||
apt-get install -y g++ make devscripts fakeroot debhelper git nasm && \
|
apt-get install -y g++ make devscripts fakeroot debhelper git nasm libgbm-dev libdrm-dev libsdl2-ttf-dev && \
|
||||||
apt-get install -y --no-install-recommends libraspberrypi-dev libssl-dev qtbase5-dev qtquickcontrols2-5-dev qtdeclarative5-dev libqt5svg5-dev libgl1-mesa-dev libegl1-mesa-dev libxkbcommon-dev wayland-protocols libopus-dev libva-dev libvdpau-dev libsdl2-dev libsdl2-ttf-dev && \
|
apt-get install -y --no-install-recommends libraspberrypi-dev libssl-dev qtbase5-dev qtquickcontrols2-5-dev qtdeclarative5-dev libqt5svg5-dev libgl1-mesa-dev libegl1-mesa-dev libxkbcommon-dev libopus-dev && \
|
||||||
apt-get clean -y && \
|
apt-get clean -y && \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
COPY FFmpeg /opt/FFmpeg
|
COPY FFmpeg /opt/FFmpeg
|
||||||
|
COPY SDL2 /opt/SDL2
|
||||||
|
|
||||||
COPY scripts/build-deps.sh /opt/scripts/
|
COPY scripts/build-deps.sh /opt/scripts/
|
||||||
RUN /bin/bash -c /opt/scripts/build-deps.sh
|
RUN /bin/bash -c /opt/scripts/build-deps.sh
|
||||||
|
|||||||
1
SDL2
Submodule
1
SDL2
Submodule
Submodule SDL2 added at b71dec57ab
2
debian/control
vendored
2
debian/control
vendored
@@ -3,7 +3,7 @@ Maintainer: Cameron Gutman <aicommander@gmail.com>
|
|||||||
Section: misc
|
Section: misc
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Standards-Version: 4.3.0
|
Standards-Version: 4.3.0
|
||||||
Build-Depends: debhelper (>= 10), libssl-dev, qtbase5-dev, qtquickcontrols2-5-dev, qtdeclarative5-dev, libqt5svg5-dev, libgl1-mesa-dev, libegl1-mesa-dev, libxkbcommon-dev, wayland-protocols, libopus-dev, libva-dev, libvdpau-dev, libsdl2-dev, libsdl2-ttf-dev, libraspberrypi-dev [armhf] | rbp-userland-dev-osmc [armhf]
|
Build-Depends: debhelper (>= 10), libssl-dev, qtbase5-dev, qtquickcontrols2-5-dev, qtdeclarative5-dev, libqt5svg5-dev, libgl1-mesa-dev, libegl1-mesa-dev, libxkbcommon-dev, libopus-dev, libsdl2-ttf-dev, wayland-protocols [amd64], libva-dev [amd64], libvdpau-dev [amd64], libraspberrypi-dev [armhf] | rbp-userland-dev-osmc [armhf]
|
||||||
|
|
||||||
Package: moonlight
|
Package: moonlight
|
||||||
Architecture: any
|
Architecture: any
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
set -e
|
set -e
|
||||||
|
|
||||||
BASE_FFMPEG_ARGS="--enable-pic --enable-static --disable-shared --disable-all --enable-avcodec --enable-decoder=h264 --enable-decoder=hevc --enable-hwaccel=h264_vaapi --enable-hwaccel=hevc_vaapi --enable-hwaccel=h264_vdpau --enable-hwaccel=hevc_vdpau"
|
BASE_FFMPEG_ARGS="--enable-pic --enable-static --disable-shared --disable-all --enable-avcodec --enable-decoder=h264 --enable-decoder=hevc"
|
||||||
|
|
||||||
ARCH=`uname -m`
|
ARCH=`uname -m`
|
||||||
echo "Building dependencies for $ARCH"
|
echo "Building dependencies for $ARCH"
|
||||||
@@ -19,13 +19,24 @@ elif [ "$ARCH" == "x86_64" ]; then
|
|||||||
cd /opt/nv-codec-headers
|
cd /opt/nv-codec-headers
|
||||||
make install
|
make install
|
||||||
|
|
||||||
# Enable NVDEC decoders
|
# Enable VAAPI, VDPAU, and NVDEC decoders
|
||||||
EXTRA_FFMPEG_ARGS="--enable-nvdec --enable-hwaccel=h264_nvdec --enable-hwaccel=hevc_nvdec"
|
EXTRA_FFMPEG_ARGS="--enable-nvdec --enable-hwaccel=h264_nvdec --enable-hwaccel=hevc_nvdec --enable-hwaccel=h264_vaapi --enable-hwaccel=hevc_vaapi --enable-hwaccel=h264_vdpau --enable-hwaccel=hevc_vdpau"
|
||||||
else
|
else
|
||||||
echo "Unrecognized architecture: $ARCH"
|
echo "Unrecognized architecture: $ARCH"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Remove the existing SDL2 library (but not SDL_ttf)
|
||||||
|
find /usr/include/SDL2 -type f -not -name 'SDL_ttf.h' -delete
|
||||||
|
rm -fv /usr/lib/*-linux-*/libSDL2-*
|
||||||
|
rm -fv /usr/lib/*-linux-*/libSDL2.*
|
||||||
|
rm -fv /usr/lib/*-linux-*/pkgconfig/sdl2.pc
|
||||||
|
|
||||||
|
cd /opt/SDL2
|
||||||
|
./configure --enable-static --disable-shared --enable-video-kmsdrm
|
||||||
|
make -j$(nproc)
|
||||||
|
make install
|
||||||
|
|
||||||
cd /opt/FFmpeg
|
cd /opt/FFmpeg
|
||||||
./configure $BASE_FFMPEG_ARGS $EXTRA_FFMPEG_ARGS
|
./configure $BASE_FFMPEG_ARGS $EXTRA_FFMPEG_ARGS
|
||||||
make -j$(nproc)
|
make -j$(nproc)
|
||||||
|
|||||||
Reference in New Issue
Block a user