mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-10-04 17:52:29 +00:00
Remove autotools support and update meson.
This simplifies our docker images and we should focus on meson support for our new CI system!
This commit is contained in:
parent
8ad477eb0e
commit
2c1531ab57
4 changed files with 48 additions and 79 deletions
|
@ -10,7 +10,7 @@ ENV PATH="/usr/lib/ccache/bin/:${PATH}"
|
||||||
RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen
|
RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen
|
||||||
|
|
||||||
RUN pacman -Sy --noconfirm python3 libxml2 libxslt cmake libyaml git make nodejs ninja clang llvm flex python-gobject gstreamer gst-plugins-base gst-plugins-bad gst-plugins-ugly gst-libav gst-editing-services python-pip npm json-glib gobject-introspection wget mono unzip glib2-docs xorg-xset xorg-server-xvfb ccache
|
RUN pacman -Sy --noconfirm python3 libxml2 libxslt cmake libyaml git make nodejs ninja clang llvm flex python-gobject gstreamer gst-plugins-base gst-plugins-bad gst-plugins-ugly gst-libav gst-editing-services python-pip npm json-glib gobject-introspection wget mono unzip glib2-docs xorg-xset xorg-server-xvfb ccache
|
||||||
RUN pip install --upgrade git+https://github.com/hotdoc/hotdoc.git@gst git+https://github.com/hotdoc/hotdoc_c_extension.git@gst git+https://github.com/thiblahute/meson.git@hotdoc
|
RUN pip install --upgrade git+https://github.com/hotdoc/hotdoc.git@gst git+https://github.com/hotdoc/hotdoc_c_extension.git@gst meson
|
||||||
|
|
||||||
RUN mkdir $GST_VALIDATE_OUTPUT && \
|
RUN mkdir $GST_VALIDATE_OUTPUT && \
|
||||||
git clone https://anongit.freedesktop.org/git/gstreamer/gst-integration-testsuites.git $GST_VALIDATE_TESTSUITES && \
|
git clone https://anongit.freedesktop.org/git/gstreamer/gst-integration-testsuites.git $GST_VALIDATE_TESTSUITES && \
|
||||||
|
@ -20,6 +20,6 @@ RUN mkdir $GST_VALIDATE_OUTPUT && \
|
||||||
# get gst-build and make all subprojects available
|
# get gst-build and make all subprojects available
|
||||||
RUN git clone git://anongit.freedesktop.org/gstreamer/gst-build $GST_BUILD_PATH && \
|
RUN git clone git://anongit.freedesktop.org/gstreamer/gst-build $GST_BUILD_PATH && \
|
||||||
cd $GST_BUILD_PATH && \
|
cd $GST_BUILD_PATH && \
|
||||||
meson build/ $GST_BUILD_MESON_ARGS
|
meson build/ $GST_BUILD_MESON_ARGS && rm -Rf build/
|
||||||
|
|
||||||
RUN rm -Rf /var/cache/pacman/
|
RUN rm -Rf /var/cache/pacman/
|
|
@ -33,19 +33,22 @@ RUN dnf builddep -y \
|
||||||
redhat-rpm-config \
|
redhat-rpm-config \
|
||||||
xorg-x11-server-Xvfb \
|
xorg-x11-server-Xvfb \
|
||||||
xorg-x11-server-utils \
|
xorg-x11-server-utils \
|
||||||
wget \
|
ninja-build \
|
||||||
meson && \
|
wget && \
|
||||||
dnf clean all
|
dnf clean all
|
||||||
|
|
||||||
# Add the user UID:1000, GID:1000, home at /gstbuild
|
RUN pip3 install meson
|
||||||
RUN groupadd -r gstbuild -g 1000 && useradd -u 1000 -r -g gstbuild -m -d /gstbuild -s /sbin/nologin -c "Gstbuild user" gstbuild && \
|
|
||||||
chmod 755 /gstbuild
|
|
||||||
|
|
||||||
# Set the working directory to gstbuild home directory
|
ENV GST_BUILD_PATH="/gst-build/"
|
||||||
WORKDIR /gstbuild
|
ENV GST_VALIDATE_OUTPUT="/validate-output"
|
||||||
|
ENV GST_VALIDATE_TESTSUITES="$GST_VALIDATE_OUTPUT/gst-integration-testsuites"
|
||||||
# Specify the user to execute all commands below
|
# FIXME Enabled gst-libav.
|
||||||
USER gstbuild
|
ENV GST_BUILD_MESON_ARGS="-Dpython=disabled -Dlibav=disabled -Dugly=enabled -Dbad=enabled -Ddevtools=enabled -Dges=enabled -Drtsp_server=enabled -Domx=disabled -Dvaapi=disabled -Dsharp=disabled"
|
||||||
|
|
||||||
# Configure git for various usage
|
# Configure git for various usage
|
||||||
RUN git config --global user.email "gstbuild@gstreamer.net" && git config --global user.name "Gstbuild Runner"
|
RUN git config --global user.email "gst-build@gstreamer.net" && git config --global user.name "Gstbuild Runner"
|
||||||
|
|
||||||
|
# get gst-build and make all subprojects available
|
||||||
|
RUN git clone git://anongit.freedesktop.org/gstreamer/gst-build $GST_BUILD_PATH && \
|
||||||
|
cd $GST_BUILD_PATH && \
|
||||||
|
meson build/ $GST_BUILD_MESON_ARGS
|
|
@ -1,12 +0,0 @@
|
||||||
FROM gstreamer/build-base-fedora:latest
|
|
||||||
|
|
||||||
USER root
|
|
||||||
|
|
||||||
RUN dnf install -y \
|
|
||||||
meson
|
|
||||||
|
|
||||||
USER gstbuild
|
|
||||||
|
|
||||||
RUN git clone git://anongit.freedesktop.org/gstreamer/gst-build
|
|
||||||
|
|
||||||
WORKDIR /gstbuild/gst-build
|
|
|
@ -2,62 +2,40 @@ FROM registry.freedesktop.org/thiblahute/gst-ci/ubuntu-runtime
|
||||||
|
|
||||||
# make source packages available in order to figure out build dependencies
|
# make source packages available in order to figure out build dependencies
|
||||||
RUN \
|
RUN \
|
||||||
sed -i "s/# deb-src/deb-src/g" /etc/apt/sources.list && \
|
sed -i "s/# deb-src/deb-src/g" /etc/apt/sources.list && \
|
||||||
apt-get update && \
|
apt-get update && \
|
||||||
apt-get -y build-dep \
|
apt-get -y build-dep \
|
||||||
orc \
|
orc \
|
||||||
gstreamer1.0 \
|
gstreamer1.0 \
|
||||||
gst-plugins-base1.0 \
|
gst-plugins-base1.0 \
|
||||||
gst-plugins-good1.0 \
|
gst-plugins-good1.0 \
|
||||||
gst-plugins-bad1.0 \
|
gst-plugins-bad1.0 \
|
||||||
gst-plugins-ugly1.0 \
|
gst-plugins-ugly1.0 \
|
||||||
gst-libav1.0 \
|
gst-libav1.0 \
|
||||||
gst-rtsp-server1.0 \
|
gst-rtsp-server1.0 \
|
||||||
gst-python1.0 \
|
gst-python1.0 \
|
||||||
gstreamer-vaapi \
|
gstreamer-vaapi \
|
||||||
gstreamer-editing-services1.0 && \
|
gstreamer-editing-services1.0 && \
|
||||||
apt-get -y install \
|
apt-get -y install \
|
||||||
ccache \
|
ccache \
|
||||||
gdb \
|
gdb \
|
||||||
git \
|
git \
|
||||||
xvfb \
|
xvfb \
|
||||||
wget
|
python3-pip \
|
||||||
|
wget
|
||||||
|
|
||||||
# Clone copies of all repositories to avoid extra downloads
|
RUN pip3 install meson
|
||||||
RUN mkdir /repositories && \
|
|
||||||
cd /repositories && \
|
|
||||||
for i in orc \
|
|
||||||
common \
|
|
||||||
gstreamer \
|
|
||||||
gst-plugins-base \
|
|
||||||
gst-plugins-good \
|
|
||||||
gst-plugins-bad \
|
|
||||||
gst-plugins-ugly \
|
|
||||||
gst-libav \
|
|
||||||
gst-build \
|
|
||||||
gst-devtools\
|
|
||||||
gst-docs \
|
|
||||||
gst-editing-services \
|
|
||||||
gst-omx \
|
|
||||||
gst-python \
|
|
||||||
gst-rtsp-server; \
|
|
||||||
do \
|
|
||||||
git clone --mirror https://anongit.freedesktop.org/git/gstreamer/$i; \
|
|
||||||
done
|
|
||||||
|
|
||||||
# Install repo tool
|
ENV GST_BUILD_PATH="/gst-build/"
|
||||||
RUN wget -nd https://storage.googleapis.com/git-repo-downloads/repo -O /usr/bin/repo && chmod a+x /usr/bin/repo
|
ENV GST_VALIDATE_OUTPUT="/validate-output"
|
||||||
|
ENV GST_VALIDATE_TESTSUITES="$GST_VALIDATE_OUTPUT/gst-integration-testsuites"
|
||||||
# Add the user UID:1000, GID:1000, home at /gstbuild
|
# FIXME Enabled gst-libav.
|
||||||
RUN groupadd -r gstbuild -g 1000 && useradd -u 1000 -r -g gstbuild -m -d /gstbuild -s /sbin/nologin -c "Gstbuild user" gstbuild && \
|
ENV GST_BUILD_MESON_ARGS="-Dpython=disabled -Dlibav=disabled -Dugly=enabled -Dbad=enabled -Ddevtools=enabled -Dges=enabled -Drtsp_server=enabled -Domx=disabled -Dvaapi=disabled -Dsharp=disabled"
|
||||||
chmod 755 /gstbuild
|
|
||||||
|
|
||||||
# Set the working directory to gstbuild home directory
|
|
||||||
WORKDIR /gstbuild
|
|
||||||
|
|
||||||
# Specify the user to execute all commands below
|
|
||||||
USER gstbuild
|
|
||||||
|
|
||||||
# Configure git for various usage
|
# Configure git for various usage
|
||||||
RUN git config --global user.email "gstbuild@gstreamer.net" && git config --global user.name "Gstbuild Runner"
|
RUN git config --global user.email "gst-build@gstreamer.net" && git config --global user.name "Gstbuild Runner"
|
||||||
|
|
||||||
|
# get gst-build and make all subprojects available
|
||||||
|
RUN git clone git://anongit.freedesktop.org/gstreamer/gst-build $GST_BUILD_PATH && \
|
||||||
|
cd $GST_BUILD_PATH && \
|
||||||
|
meson build/ $GST_BUILD_MESON_ARGS
|
Loading…
Reference in a new issue