Add X11 and all of its friends

This commit is contained in:
BtbN 2021-07-14 23:44:25 +02:00
parent 4b9fdabe83
commit f48d93e470
11 changed files with 357 additions and 2 deletions

View file

@ -8,12 +8,17 @@ ffbuild_enabled() {
return 0
}
ffbuild_dockerlayer() {
to_df "COPY --from=${SELFLAYER} \$FFBUILD_PREFIX/. \$FFBUILD_PREFIX"
to_df "COPY --from=${SELFLAYER} \$FFBUILD_PREFIX/share/aclocal/. /usr/share/aclocal"
}
ffbuild_dockerbuild() {
git-mini-clone "$XORGMACROS_REPO" "$XORGMACROS_COMMIT" xorg-macros
cd xorg-macros
autoreconf -i
./configure --prefix="/usr"
./configure --prefix="$FFBUILD_PREFIX"
make -j"$(nproc)"
make install
}

33
scripts.d/45-x11/10-xcbproto.sh Executable file
View file

@ -0,0 +1,33 @@
#!/bin/bash
XCBPROTO_REPO="https://gitlab.freedesktop.org/xorg/proto/xcbproto.git"
XCBPROTO_COMMIT="496e3ce329c3cc9b32af4054c30fa0f306deb007"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$XCBPROTO_REPO" "$XCBPROTO_COMMIT" xcbproto
cd xcbproto
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
}

33
scripts.d/45-x11/10-xproto.sh Executable file
View file

@ -0,0 +1,33 @@
#!/bin/bash
XPROTO_REPO="https://gitlab.freedesktop.org/xorg/proto/xorgproto.git"
XPROTO_COMMIT="a0ed054ee2c334941dfe9eaa7bcfdbbe6907e1b5"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$XPROTO_REPO" "$XPROTO_COMMIT" xproto
cd xproto
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
}

38
scripts.d/45-x11/10-xtrans.sh Executable file
View file

@ -0,0 +1,38 @@
#!/bin/bash
LIBXTRANS_REPO="https://gitlab.freedesktop.org/xorg/lib/libxtrans.git"
LIBXTRANS_COMMIT="3b5df889f58a99980a35a7b4a18eb4e7d2abeac4"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$LIBXTRANS_REPO" "$LIBXTRANS_COMMIT" libxtrans
cd libxtrans
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
--without-xmlto
--without-fop
--without-xsltproc
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
cp -r "$FFBUILD_PREFIX"/share/aclocal/. /usr/share/aclocal
}

36
scripts.d/45-x11/20-libxau.sh Executable file
View file

@ -0,0 +1,36 @@
#!/bin/bash
LIBXAU_REPO="https://gitlab.freedesktop.org/xorg/lib/libxau.git"
LIBXAU_COMMIT="d9443b2c57b512cfb250b35707378654d86c7dea"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$LIBXAU_REPO" "$LIBXAU_COMMIT" libxau
cd libxau
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
--disable-shared
--enable-static
--with-pic
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
}

45
scripts.d/45-x11/30-libxcb.sh Executable file
View file

@ -0,0 +1,45 @@
#!/bin/bash
LIBXCB_REPO="https://gitlab.freedesktop.org/xorg/lib/libxcb.git"
LIBXCB_COMMIT="21414e7c447f18224c577ed5e32bd5d6e45c44f9"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$LIBXCB_REPO" "$LIBXCB_COMMIT" libxcb
cd libxcb
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
--disable-shared
--enable-static
--with-pic
--disable-devel-docs
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
}
ffbuild_configure() {
echo --enable-libxcb
}
ffbuild_unconfigure() {
echo --disable-libxcb
}

42
scripts.d/45-x11/40-libx11.sh Executable file
View file

@ -0,0 +1,42 @@
#!/bin/bash
LIBX11_REPO="https://gitlab.freedesktop.org/xorg/lib/libx11.git"
LIBX11_COMMIT="d01d23374107f6fc55511f02559cf75be7bdf448"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$LIBX11_REPO" "$LIBX11_COMMIT" libx11
cd libx11
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
--disable-shared
--enable-static
--with-pic
--without-xmlto
--without-fop
--without-xsltproc
--without-lint
--disable-specs
--enable-ipv6
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
}

40
scripts.d/45-x11/50-libxext.sh Executable file
View file

@ -0,0 +1,40 @@
#!/bin/bash
LIBXEXT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxext.git"
LIBXEXT_COMMIT="47904063048fa6ef6e8e16219ddef4d14d5d9a4b"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$LIBXEXT_REPO" "$LIBXEXT_COMMIT" libxext
cd libxext
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
--disable-shared
--enable-static
--with-pic
--without-xmlto
--without-fop
--without-xsltproc
--without-lint
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
}

View file

@ -0,0 +1,36 @@
#!/bin/bash
LIBXFIXES_REPO="https://gitlab.freedesktop.org/xorg/lib/libxfixes.git"
LIBXFIXES_COMMIT="6fe3bd64dd82f704ed91478acb4c99ab5c00be16"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$LIBXFIXES_REPO" "$LIBXFIXES_COMMIT" libxfixes
cd libxfixes
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
--disable-shared
--enable-static
--with-pic
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
}

47
scripts.d/45-x11/60-libxv.sh Executable file
View file

@ -0,0 +1,47 @@
#!/bin/bash
LIBXV_REPO="https://gitlab.freedesktop.org/xorg/lib/libxv.git"
LIBXV_COMMIT="03a6f599d060591a9a7cd8558bd2143a1c7c70d7"
ffbuild_enabled() {
[[ $TARGET != linux* ]] && return -1
[[ $ADDINS_STR == *4.4* ]] && return -1
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$LIBXV_REPO" "$LIBXV_COMMIT" libxv
cd libxv
autoreconf -i
local myconf=(
--prefix="$FFBUILD_PREFIX"
--disable-shared
--enable-static
--with-pic
--without-lint
)
if [[ $TARGET == linux* ]]; then
myconf+=(
--host="$FFBUILD_TOOLCHAIN"
)
else
echo "Unknown target"
return -1
fi
./configure "${myconf[@]}"
make -j$(nproc)
make install
}
ffbuild_configure() {
# Needs a patch to FFmpeg to fix static linking first
echo #--enable-xlib
}
ffbuild_unconfigure() {
echo --disable-xlib
}

View file

@ -21,7 +21,7 @@ ffbuild_dockerbuild() {
--with-pic
--disable-docs
--enable-drm
--disable-x11
--enable-x11
--disable-glx
--disable-wayland
)