mirror of
https://github.com/jellyfin/jellyfin-ffmpeg.git
synced 2026-09-03 05:09:58 +03:00
Add support for linux portable builds
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
/Dockerfile
|
||||
/ffbuild/
|
||||
/artifacts/
|
||||
/.cache/
|
||||
@@ -0,0 +1,7 @@
|
||||
Copyright 2020-2021 BtbN <btbn@btbn.de>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
@@ -0,0 +1,41 @@
|
||||
# jellyfin-ffmpeg portable versions builder
|
||||
|
||||
Portable versions builder of jellyfin-ffmpeg for Windows and Linux.
|
||||
|
||||
## Package List
|
||||
|
||||
For a list of included dependencies check the `scripts.d` directory.
|
||||
Every file corresponds to its respective package.
|
||||
|
||||
## How to make a build
|
||||
|
||||
### Prerequisites
|
||||
|
||||
* bash
|
||||
* docker
|
||||
|
||||
### Step 1: Build image of dependencies
|
||||
|
||||
* `./makeimage.sh target variant [addins]`
|
||||
|
||||
### Step 2: Build jellyfn-ffmpeg
|
||||
|
||||
* `./build.sh target variant [addins]`
|
||||
|
||||
On success, the resulting `zip` or `tar.xz` file will be in the `artifacts` subdir.
|
||||
|
||||
### Targets, Variants and Addins
|
||||
|
||||
Available targets:
|
||||
* `win64` (x86_64 Windows, windows>=7)
|
||||
* `linux64` (x86_64 Linux, glibc>=2.23, linux>=4.4)
|
||||
* `linuxarm64` (arm64 (aarch64) Linux, glibc>=2.27, linux>=4.15)
|
||||
|
||||
Available variants:
|
||||
* `gpl` Includes all dependencies, even those that require full GPL instead of just LGPL.
|
||||
* `gpl-shared` Same as gpl, but comes with the `libav*` family of shared libs instead of pure static executables.
|
||||
|
||||
All of those can be optionally combined with any combination of addins.
|
||||
|
||||
Available addins:
|
||||
* `debug` to not strip debug symbols from the binaries. This increases the output size by about 250MB.
|
||||
Executable
+2
@@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
FF_CONFIGURE="${FF_CONFIGURE/--disable-debug/} --optflags='-Og' --disable-stripping"
|
||||
Executable
+112
@@ -0,0 +1,112 @@
|
||||
#!/bin/bash
|
||||
set -xe
|
||||
shopt -s globstar
|
||||
cd "$(dirname "$0")"
|
||||
source util/vars.sh
|
||||
|
||||
get_output() {
|
||||
(
|
||||
SELF="$1"
|
||||
source $1
|
||||
if ffbuild_enabled; then
|
||||
ffbuild_$2 || exit 0
|
||||
else
|
||||
ffbuild_un$2 || exit 0
|
||||
fi
|
||||
)
|
||||
}
|
||||
|
||||
source "variants/${TARGET}-${VARIANT}.sh"
|
||||
|
||||
for addin in ${ADDINS[*]}; do
|
||||
source "addins/${addin}.sh"
|
||||
done
|
||||
|
||||
export FFBUILD_PREFIX="$(docker run --rm "$IMAGE" bash -c 'echo $FFBUILD_PREFIX')"
|
||||
|
||||
for script in scripts.d/**/*.sh; do
|
||||
FF_CONFIGURE+=" $(get_output $script configure)"
|
||||
FF_CFLAGS+=" $(get_output $script cflags)"
|
||||
FF_CXXFLAGS+=" $(get_output $script cxxflags)"
|
||||
FF_LDFLAGS+=" $(get_output $script ldflags)"
|
||||
FF_LDEXEFLAGS+=" $(get_output $script ldexeflags)"
|
||||
FF_LIBS+=" $(get_output $script libs)"
|
||||
done
|
||||
|
||||
FF_CONFIGURE="$(xargs <<< "$FF_CONFIGURE")"
|
||||
FF_CFLAGS="$(xargs <<< "$FF_CFLAGS")"
|
||||
FF_CXXFLAGS="$(xargs <<< "$FF_CXXFLAGS")"
|
||||
FF_LDFLAGS="$(xargs <<< "$FF_LDFLAGS")"
|
||||
FF_LDEXEFLAGS="$(xargs <<< "$FF_LDEXEFLAGS")"
|
||||
FF_LIBS="$(xargs <<< "$FF_LIBS")"
|
||||
|
||||
TESTFILE="uidtestfile"
|
||||
rm -f "$TESTFILE"
|
||||
docker run --rm -v "$PWD:/uidtestdir" "$IMAGE" touch "/uidtestdir/$TESTFILE"
|
||||
DOCKERUID="$(stat -c "%u" "$TESTFILE")"
|
||||
rm -f "$TESTFILE"
|
||||
[[ "$DOCKERUID" != "$(id -u)" ]] && UIDARGS=( -u "$(id -u):$(id -g)" ) || UIDARGS=()
|
||||
|
||||
rm -rf ffbuild
|
||||
mkdir -p ffbuild/ffmpeg
|
||||
rsync -a .. ffbuild/ffmpeg --exclude=$(basename "$PWD")
|
||||
|
||||
BUILD_SCRIPT="$(mktemp)"
|
||||
trap "rm -f -- '$BUILD_SCRIPT'" EXIT
|
||||
|
||||
cat <<EOF >"$BUILD_SCRIPT"
|
||||
set -xe
|
||||
cd /ffbuild
|
||||
rm -rf prefix
|
||||
cd ffmpeg
|
||||
|
||||
if [[ -f "debian/patches/series" ]]; then
|
||||
ln -s /ffbuild/ffmpeg/debian/patches patches
|
||||
quilt push -a
|
||||
fi
|
||||
|
||||
./configure --prefix=/ffbuild/prefix \
|
||||
\$FFBUILD_TARGET_FLAGS \
|
||||
--extra-version="Jellyfin" \
|
||||
--extra-cflags='$FF_CFLAGS' \
|
||||
--extra-cxxflags='$FF_CXXFLAGS' \
|
||||
--extra-ldflags='$FF_LDFLAGS' \
|
||||
--extra-ldexeflags='$FF_LDEXEFLAGS' \
|
||||
--extra-libs='$FF_LIBS' \
|
||||
$FF_CONFIGURE
|
||||
make -j\$(nproc) V=1
|
||||
make install
|
||||
EOF
|
||||
|
||||
[[ -t 1 ]] && TTY_ARG="-t" || TTY_ARG=""
|
||||
|
||||
docker run --rm -i $TTY_ARG "${UIDARGS[@]}" -v $PWD/ffbuild:/ffbuild -v "$BUILD_SCRIPT":/build.sh "$IMAGE" bash /build.sh
|
||||
|
||||
mkdir -p artifacts
|
||||
ARTIFACTS_PATH="$PWD/artifacts"
|
||||
PKG_VER=$(dpkg-parsechangelog --show-field Version -l ffbuild/ffmpeg/debian/changelog)
|
||||
PKG_NAME="jellyfin-ffmpeg_${PKG_VER}_portable_${TARGET}-${VARIANT}${ADDINS_STR:+-}${ADDINS_STR}"
|
||||
|
||||
mkdir -p ffbuild/pkgroot
|
||||
cp ffbuild/prefix/bin/* ffbuild/pkgroot
|
||||
[ "$(ls -A ffbuild/prefix/lib | grep -i ".*\.so.*\$")" ] && cp ffbuild/prefix/lib/*.so* ffbuild/pkgroot
|
||||
|
||||
cd ffbuild/pkgroot
|
||||
if [[ "${TARGET}" == win* ]]; then
|
||||
OUTPUT_FNAME="${PKG_NAME}.zip"
|
||||
zip -9 -r "${ARTIFACTS_PATH}/${OUTPUT_FNAME}" *
|
||||
else
|
||||
OUTPUT_FNAME="${PKG_NAME}.tar.xz"
|
||||
tar cJf "${ARTIFACTS_PATH}/${OUTPUT_FNAME}" *
|
||||
fi
|
||||
cd "${ARTIFACTS_PATH}"
|
||||
sha256sum ./${OUTPUT_FNAME} > ./${OUTPUT_FNAME}.sha256sum
|
||||
cd -
|
||||
cd -
|
||||
|
||||
rm -rf ffbuild
|
||||
|
||||
if [[ -n "$GITHUB_ACTIONS" ]]; then
|
||||
echo "build_name=${BUILD_NAME}" >> "$GITHUB_OUTPUT"
|
||||
echo "${OUTPUT_FNAME}" > "${ARTIFACTS_PATH}/${TARGET}-${VARIANT}${ADDINS_STR:+-}${ADDINS_STR}.txt"
|
||||
fi
|
||||
Executable
+80
@@ -0,0 +1,80 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
cd "$(dirname "$0")"
|
||||
source util/vars.sh
|
||||
|
||||
rm -f Dockerfile
|
||||
|
||||
layername() {
|
||||
printf "layer-"
|
||||
basename "$1" | sed 's/.sh$//'
|
||||
}
|
||||
|
||||
exec_dockerstage() {
|
||||
SCRIPT="$1"
|
||||
(
|
||||
SELF="$SCRIPT"
|
||||
source "$SCRIPT"
|
||||
ffbuild_enabled || exit 0
|
||||
ffbuild_dockerstage || exit $?
|
||||
)
|
||||
}
|
||||
|
||||
to_df() {
|
||||
_of="${TODF:-Dockerfile}"
|
||||
printf "$@" >> "$_of"
|
||||
echo >> "$_of"
|
||||
}
|
||||
|
||||
to_df "FROM ${REGISTRY}/${REPO}/base-${TARGET}:latest AS base"
|
||||
to_df "ENV TARGET=$TARGET VARIANT=$VARIANT REPO=$REPO ADDINS_STR=$ADDINS_STR"
|
||||
|
||||
for addin in "${ADDINS[@]}"; do
|
||||
(
|
||||
source addins/"${addin}.sh"
|
||||
type ffbuild_dockeraddin &>/dev/null && ffbuild_dockeraddin || true
|
||||
)
|
||||
done
|
||||
|
||||
PREVLAYER="base"
|
||||
for ID in $(ls -1d scripts.d/??-* | sed -s 's|^.*/\(..\).*|\1|' | sort -u); do
|
||||
LAYER="layer-$ID"
|
||||
|
||||
for STAGE in scripts.d/$ID-*; do
|
||||
to_df "FROM $PREVLAYER AS $(layername "$STAGE")"
|
||||
|
||||
if [[ -f "$STAGE" ]]; then
|
||||
exec_dockerstage "$STAGE"
|
||||
else
|
||||
for STAGE in "${STAGE}"/??-*; do
|
||||
exec_dockerstage "$STAGE"
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
to_df "FROM $PREVLAYER AS $LAYER"
|
||||
for STAGE in scripts.d/$ID-*; do
|
||||
if [[ -f "$STAGE" ]]; then
|
||||
SCRIPT="$STAGE"
|
||||
else
|
||||
SCRIPTS=( "$STAGE"/??-* )
|
||||
SCRIPT="${SCRIPTS[-1]}"
|
||||
fi
|
||||
|
||||
(
|
||||
SELF="$SCRIPT"
|
||||
SELFLAYER="$(layername "$STAGE")"
|
||||
source "$SCRIPT"
|
||||
ffbuild_enabled || exit 0
|
||||
ffbuild_dockerlayer || exit $?
|
||||
TODF="Dockerfile.final" PREVLAYER="__PREVLAYER__" \
|
||||
ffbuild_dockerfinal || exit $?
|
||||
)
|
||||
done
|
||||
|
||||
PREVLAYER="$LAYER"
|
||||
done
|
||||
|
||||
to_df "FROM base"
|
||||
sed "s/__PREVLAYER__/$PREVLAYER/g" Dockerfile.final | sort -u >> Dockerfile
|
||||
rm Dockerfile.final
|
||||
@@ -0,0 +1,61 @@
|
||||
ARG GH_REPO=ghcr.io/jellyfin/jellyfin-ffmpeg
|
||||
FROM $GH_REPO/base:latest
|
||||
|
||||
RUN --mount=src=ct-ng-config,dst=/.config \
|
||||
git clone --filter=blob:none https://github.com/crosstool-ng/crosstool-ng.git /ct-ng && cd /ct-ng && \
|
||||
./bootstrap && \
|
||||
./configure --enable-local && \
|
||||
make -j$(nproc) && \
|
||||
cp /.config .config && \
|
||||
./ct-ng build && \
|
||||
cd / && \
|
||||
rm -rf ct-ng
|
||||
|
||||
# Prepare "cross" environment to heavily favour static builds
|
||||
RUN \
|
||||
find /opt/ct-ng -type l \
|
||||
-and -name '*.so' \
|
||||
-and -not -ipath '*plugin*' \
|
||||
-and -not -name 'libdl.*' \
|
||||
-and -not -name 'libc.*' \
|
||||
-and -not -name 'libm.*' \
|
||||
-and -not -name 'libmvec.*' \
|
||||
-and -not -name 'librt.*' \
|
||||
-and -not -name 'libpthread.*' \
|
||||
-delete && \
|
||||
find /opt/ct-ng \
|
||||
-name 'libdl.a' \
|
||||
-or -name 'libc.a' \
|
||||
-or -name 'libm.a' \
|
||||
-or -name 'libmvec.a' \
|
||||
-or -name 'librt.a' \
|
||||
-or -name 'libpthread.a' \
|
||||
-delete && \
|
||||
mkdir /opt/ffbuild
|
||||
|
||||
ADD toolchain.cmake /toolchain.cmake
|
||||
ADD cross.meson /cross.meson
|
||||
|
||||
ADD gen-implib.sh /usr/bin/gen-implib
|
||||
RUN git clone --filter=blob:none --depth=1 https://github.com/yugr/Implib.so /opt/implib
|
||||
|
||||
ENV FFBUILD_TOOLCHAIN=x86_64-ffbuild-linux-gnu
|
||||
ENV PATH="/opt/ct-ng/bin:${PATH}" \
|
||||
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --pkg-config-flags=--static --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=x86_64 --target-os=linux" \
|
||||
FFBUILD_CROSS_PREFIX="${FFBUILD_TOOLCHAIN}-" \
|
||||
FFBUILD_RUST_TARGET="x86_64-unknown-linux-gnu" \
|
||||
FFBUILD_PREFIX=/opt/ffbuild \
|
||||
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
|
||||
PKG_CONFIG=pkg-config \
|
||||
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \
|
||||
CC="${FFBUILD_TOOLCHAIN}-gcc" \
|
||||
CXX="${FFBUILD_TOOLCHAIN}-g++" \
|
||||
LD="${FFBUILD_TOOLCHAIN}-ld" \
|
||||
AR="${FFBUILD_TOOLCHAIN}-gcc-ar" \
|
||||
RANLIB="${FFBUILD_TOOLCHAIN}-gcc-ranlib" \
|
||||
NM="${FFBUILD_TOOLCHAIN}-gcc-nm" \
|
||||
CFLAGS="-static-libgcc -static-libstdc++ -I/opt/ffbuild/include -O2 -pipe -fPIC -DPIC -D_FORTIFY_SOURCE=2 -fstack-protector-strong -pthread" \
|
||||
CXXFLAGS="-static-libgcc -static-libstdc++ -I/opt/ffbuild/include -O2 -pipe -fPIC -DPIC -D_FORTIFY_SOURCE=2 -fstack-protector-strong -pthread" \
|
||||
LDFLAGS="-static-libgcc -static-libstdc++ -L/opt/ffbuild/lib -O2 -pipe -fstack-protector-strong -Wl,-z,relro,-z,now -pthread -lm" \
|
||||
STAGE_CFLAGS="-fvisibility=hidden -fno-semantic-interposition" \
|
||||
STAGE_CXXFLAGS="-fvisibility=hidden -fno-semantic-interposition"
|
||||
@@ -0,0 +1,13 @@
|
||||
[binaries]
|
||||
c = 'x86_64-ffbuild-linux-gnu-gcc'
|
||||
cpp = 'x86_64-ffbuild-linux-gnu-g++'
|
||||
ld = 'x86_64-ffbuild-linux-gnu-ld'
|
||||
ar = 'x86_64-ffbuild-linux-gnu-gcc-ar'
|
||||
ranlib = 'x86_64-ffbuild-linux-gnu-gcc-ranlib'
|
||||
strip = 'x86_64-ffbuild-linux-gnu-strip'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,945 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# crosstool-NG 1.25.0.90_cf9beb1 Configuration
|
||||
#
|
||||
CT_CONFIGURE_has_static_link=y
|
||||
CT_CONFIGURE_has_cxx11=y
|
||||
CT_CONFIGURE_has_wget=y
|
||||
CT_CONFIGURE_has_curl=y
|
||||
CT_CONFIGURE_has_meson=y
|
||||
CT_CONFIGURE_has_ninja=y
|
||||
CT_CONFIGURE_has_rsync=y
|
||||
CT_CONFIGURE_has_make_3_81_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_0_or_newer=y
|
||||
CT_CONFIGURE_has_libtool_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtoolize_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_autoconf_2_65_or_newer=y
|
||||
CT_CONFIGURE_has_autoreconf_2_65_or_newer=y
|
||||
CT_CONFIGURE_has_automake_1_15_or_newer=y
|
||||
CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y
|
||||
CT_CONFIGURE_has_python_3_4_or_newer=y
|
||||
CT_CONFIGURE_has_bison_2_7_or_newer=y
|
||||
CT_CONFIGURE_has_bison_3_0_4_or_newer=y
|
||||
CT_CONFIGURE_has_python=y
|
||||
CT_CONFIGURE_has_svn=y
|
||||
CT_CONFIGURE_has_git=y
|
||||
CT_CONFIGURE_has_md5sum=y
|
||||
CT_CONFIGURE_has_sha1sum=y
|
||||
CT_CONFIGURE_has_sha256sum=y
|
||||
CT_CONFIGURE_has_sha512sum=y
|
||||
CT_CONFIGURE_has_install_with_strip_program=y
|
||||
CT_VERSION="1.25.0.90_cf9beb1"
|
||||
CT_VCHECK=""
|
||||
CT_CONFIG_VERSION_ENV="4"
|
||||
CT_CONFIG_VERSION_CURRENT="4"
|
||||
CT_CONFIG_VERSION="4"
|
||||
CT_MODULES=y
|
||||
|
||||
#
|
||||
# Paths and misc options
|
||||
#
|
||||
|
||||
#
|
||||
# crosstool-NG behavior
|
||||
#
|
||||
CT_OBSOLETE=y
|
||||
CT_EXPERIMENTAL=y
|
||||
CT_ALLOW_BUILD_AS_ROOT=y
|
||||
CT_ALLOW_BUILD_AS_ROOT_SURE=y
|
||||
# CT_DEBUG_CT is not set
|
||||
|
||||
#
|
||||
# Paths
|
||||
#
|
||||
CT_LOCAL_TARBALLS_DIR="${HOME}/src"
|
||||
# CT_SAVE_TARBALLS is not set
|
||||
# CT_TARBALLS_BUILDROOT_LAYOUT is not set
|
||||
CT_WORK_DIR="${CT_TOP_DIR}/build"
|
||||
CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}"
|
||||
CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build"
|
||||
CT_PREFIX_DIR="/opt/ct-ng"
|
||||
CT_RM_RF_PREFIX_DIR=y
|
||||
CT_REMOVE_DOCS=y
|
||||
# CT_INSTALL_LICENSES is not set
|
||||
# CT_PREFIX_DIR_RO is not set
|
||||
CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y
|
||||
CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES=y
|
||||
|
||||
#
|
||||
# Downloading
|
||||
#
|
||||
CT_DOWNLOAD_AGENT_WGET=y
|
||||
# CT_DOWNLOAD_AGENT_CURL is not set
|
||||
# CT_DOWNLOAD_AGENT_NONE is not set
|
||||
# CT_FORBID_DOWNLOAD is not set
|
||||
# CT_FORCE_DOWNLOAD is not set
|
||||
CT_CONNECT_TIMEOUT=10
|
||||
CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=3 -nc --progress=dot:binary"
|
||||
# CT_ONLY_DOWNLOAD is not set
|
||||
# CT_USE_MIRROR is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST=y
|
||||
CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512"
|
||||
# CT_VERIFY_DOWNLOAD_SIGNATURE is not set
|
||||
|
||||
#
|
||||
# Extracting
|
||||
#
|
||||
# CT_FORCE_EXTRACT is not set
|
||||
CT_OVERRIDE_CONFIG_GUESS_SUB=y
|
||||
# CT_ONLY_EXTRACT is not set
|
||||
CT_PATCH_BUNDLED=y
|
||||
# CT_PATCH_LOCAL is not set
|
||||
# CT_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_PATCH_NONE is not set
|
||||
CT_PATCH_ORDER="bundled"
|
||||
|
||||
#
|
||||
# Build behavior
|
||||
#
|
||||
CT_PARALLEL_JOBS=0
|
||||
CT_LOAD=""
|
||||
CT_USE_PIPES=y
|
||||
CT_EXTRA_CFLAGS_FOR_BUILD="-fPIC -DPIC"
|
||||
CT_EXTRA_CXXFLAGS_FOR_BUILD="-fPIC -DPIC"
|
||||
CT_EXTRA_LDFLAGS_FOR_BUILD=""
|
||||
CT_EXTRA_CFLAGS_FOR_HOST="-fPIC -DPIC"
|
||||
CT_EXTRA_LDFLAGS_FOR_HOST=""
|
||||
# CT_CONFIG_SHELL_SH is not set
|
||||
# CT_CONFIG_SHELL_ASH is not set
|
||||
CT_CONFIG_SHELL_BASH=y
|
||||
# CT_CONFIG_SHELL_CUSTOM is not set
|
||||
CT_CONFIG_SHELL="${bash}"
|
||||
|
||||
#
|
||||
# Logging
|
||||
#
|
||||
# CT_LOG_ERROR is not set
|
||||
# CT_LOG_WARN is not set
|
||||
# CT_LOG_INFO is not set
|
||||
# CT_LOG_EXTRA is not set
|
||||
# CT_LOG_ALL is not set
|
||||
CT_LOG_DEBUG=y
|
||||
CT_LOG_LEVEL_MAX="DEBUG"
|
||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||
# CT_LOG_PROGRESS_BAR is not set
|
||||
# CT_LOG_TO_FILE is not set
|
||||
# end of Paths and misc options
|
||||
|
||||
#
|
||||
# Target options
|
||||
#
|
||||
# CT_ARCH_ALPHA is not set
|
||||
# CT_ARCH_ARC is not set
|
||||
# CT_ARCH_ARM is not set
|
||||
# CT_ARCH_AVR is not set
|
||||
# CT_ARCH_C6X is not set
|
||||
# CT_ARCH_LOONGARCH is not set
|
||||
# CT_ARCH_M68K is not set
|
||||
# CT_ARCH_MICROBLAZE is not set
|
||||
# CT_ARCH_MIPS is not set
|
||||
# CT_ARCH_MOXIE is not set
|
||||
# CT_ARCH_MSP430 is not set
|
||||
# CT_ARCH_NIOS2 is not set
|
||||
# CT_ARCH_POWERPC is not set
|
||||
# CT_ARCH_PRU is not set
|
||||
# CT_ARCH_RISCV is not set
|
||||
# CT_ARCH_S390 is not set
|
||||
# CT_ARCH_SH is not set
|
||||
# CT_ARCH_SPARC is not set
|
||||
CT_ARCH_X86=y
|
||||
# CT_ARCH_XTENSA is not set
|
||||
CT_ARCH="x86"
|
||||
CT_ARCH_CHOICE_KSYM="X86"
|
||||
CT_ARCH_CPU=""
|
||||
CT_ARCH_TUNE=""
|
||||
CT_ARCH_X86_SHOW=y
|
||||
|
||||
#
|
||||
# Options for x86
|
||||
#
|
||||
CT_ARCH_X86_PKG_KSYM=""
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR C6X LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ARCH_SUFFIX=""
|
||||
# CT_OMIT_TARGET_VENDOR is not set
|
||||
|
||||
#
|
||||
# Generic target options
|
||||
#
|
||||
# CT_MULTILIB is not set
|
||||
CT_DEMULTILIB=y
|
||||
CT_ARCH_USE_MMU=y
|
||||
CT_ARCH_SUPPORTS_LIBSANITIZER=y
|
||||
CT_ARCH_SUPPORTS_32=y
|
||||
CT_ARCH_SUPPORTS_64=y
|
||||
CT_ARCH_DEFAULT_32=y
|
||||
CT_ARCH_BITNESS=64
|
||||
# CT_ARCH_32 is not set
|
||||
CT_ARCH_64=y
|
||||
CT_ARCH_SUPPORTS_WITH_32_64=y
|
||||
|
||||
#
|
||||
# Target optimisations
|
||||
#
|
||||
CT_ARCH_SUPPORTS_WITH_ARCH=y
|
||||
CT_ARCH_SUPPORTS_WITH_CPU=y
|
||||
CT_ARCH_SUPPORTS_WITH_TUNE=y
|
||||
CT_ARCH_ARCH=""
|
||||
CT_TARGET_CFLAGS="-fPIC -DPIC"
|
||||
CT_TARGET_LDFLAGS=""
|
||||
# end of Target options
|
||||
|
||||
#
|
||||
# Toolchain options
|
||||
#
|
||||
|
||||
#
|
||||
# General toolchain options
|
||||
#
|
||||
CT_USE_SYSROOT=y
|
||||
CT_SYSROOT_NAME="sysroot"
|
||||
CT_SYSROOT_DIR_PREFIX=""
|
||||
# CT_STATIC_TOOLCHAIN is not set
|
||||
CT_SHOW_CT_VERSION=y
|
||||
CT_TOOLCHAIN_PKGVERSION=""
|
||||
CT_TOOLCHAIN_BUGURL=""
|
||||
|
||||
#
|
||||
# Tuple completion and aliasing
|
||||
#
|
||||
CT_TARGET_VENDOR="ffbuild"
|
||||
CT_TARGET_ALIAS_SED_EXPR=""
|
||||
CT_TARGET_ALIAS=""
|
||||
|
||||
#
|
||||
# Toolchain type
|
||||
#
|
||||
# CT_NATIVE is not set
|
||||
CT_CROSS=y
|
||||
# CT_CROSS_NATIVE is not set
|
||||
# CT_CANADIAN is not set
|
||||
CT_TOOLCHAIN_TYPE="cross"
|
||||
|
||||
#
|
||||
# Build system
|
||||
#
|
||||
CT_BUILD=""
|
||||
CT_BUILD_PREFIX=""
|
||||
CT_BUILD_SUFFIX=""
|
||||
|
||||
#
|
||||
# Misc options
|
||||
#
|
||||
# CT_TOOLCHAIN_ENABLE_NLS is not set
|
||||
# end of Toolchain options
|
||||
|
||||
#
|
||||
# Operating System
|
||||
#
|
||||
CT_KERNEL_SUPPORTS_SHARED_LIBS=y
|
||||
# CT_KERNEL_BARE_METAL is not set
|
||||
CT_KERNEL_LINUX=y
|
||||
# CT_KERNEL_WINDOWS is not set
|
||||
CT_KERNEL="linux"
|
||||
CT_KERNEL_CHOICE_KSYM="LINUX"
|
||||
CT_KERNEL_LINUX_SHOW=y
|
||||
|
||||
#
|
||||
# Options for linux
|
||||
#
|
||||
CT_KERNEL_LINUX_PKG_KSYM="LINUX"
|
||||
CT_LINUX_DIR_NAME="linux"
|
||||
CT_LINUX_USE_WWW_KERNEL_ORG=y
|
||||
# CT_LINUX_USE_ORACLE is not set
|
||||
CT_LINUX_USE="LINUX"
|
||||
CT_LINUX_PKG_NAME="linux"
|
||||
CT_LINUX_SRC_RELEASE=y
|
||||
# CT_LINUX_SRC_DEVEL is not set
|
||||
# CT_LINUX_SRC_CUSTOM is not set
|
||||
CT_LINUX_PATCH_GLOBAL=y
|
||||
# CT_LINUX_PATCH_BUNDLED is not set
|
||||
# CT_LINUX_PATCH_LOCAL is not set
|
||||
# CT_LINUX_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_LINUX_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_LINUX_PATCH_NONE is not set
|
||||
CT_LINUX_PATCH_ORDER="global"
|
||||
# CT_LINUX_V_6_0 is not set
|
||||
# CT_LINUX_V_5_19 is not set
|
||||
# CT_LINUX_V_5_18 is not set
|
||||
# CT_LINUX_V_5_17 is not set
|
||||
# CT_LINUX_V_5_16 is not set
|
||||
# CT_LINUX_V_5_15 is not set
|
||||
# CT_LINUX_V_5_14 is not set
|
||||
# CT_LINUX_V_5_13 is not set
|
||||
# CT_LINUX_V_5_12 is not set
|
||||
# CT_LINUX_V_5_11 is not set
|
||||
# CT_LINUX_V_5_10 is not set
|
||||
# CT_LINUX_V_5_9 is not set
|
||||
# CT_LINUX_V_5_8 is not set
|
||||
# CT_LINUX_V_5_7 is not set
|
||||
# CT_LINUX_V_5_5 is not set
|
||||
# CT_LINUX_V_5_4 is not set
|
||||
# CT_LINUX_V_5_3 is not set
|
||||
# CT_LINUX_V_5_2 is not set
|
||||
# CT_LINUX_V_5_1 is not set
|
||||
# CT_LINUX_V_5_0 is not set
|
||||
# CT_LINUX_V_4_20 is not set
|
||||
# CT_LINUX_V_4_19 is not set
|
||||
# CT_LINUX_V_4_18 is not set
|
||||
# CT_LINUX_V_4_17 is not set
|
||||
# CT_LINUX_V_4_16 is not set
|
||||
# CT_LINUX_V_4_15 is not set
|
||||
# CT_LINUX_V_4_14 is not set
|
||||
# CT_LINUX_V_4_13 is not set
|
||||
# CT_LINUX_V_4_12 is not set
|
||||
# CT_LINUX_V_4_11 is not set
|
||||
# CT_LINUX_V_4_10 is not set
|
||||
# CT_LINUX_V_4_9 is not set
|
||||
CT_LINUX_V_4_4=y
|
||||
# CT_LINUX_V_4_1 is not set
|
||||
# CT_LINUX_V_3_18 is not set
|
||||
# CT_LINUX_V_3_16 is not set
|
||||
# CT_LINUX_V_3_13 is not set
|
||||
# CT_LINUX_V_3_12 is not set
|
||||
# CT_LINUX_V_3_10 is not set
|
||||
# CT_LINUX_V_3_4 is not set
|
||||
# CT_LINUX_V_3_2 is not set
|
||||
# CT_LINUX_V_2_6_32 is not set
|
||||
CT_LINUX_VERSION="4.4.302"
|
||||
CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})"
|
||||
CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_LINUX_SIGNATURE_FORMAT="unpacked/.sign"
|
||||
CT_LINUX_5_19_or_older=y
|
||||
CT_LINUX_older_than_5_19=y
|
||||
CT_LINUX_5_12_or_older=y
|
||||
CT_LINUX_older_than_5_12=y
|
||||
CT_LINUX_5_5_or_older=y
|
||||
CT_LINUX_older_than_5_5=y
|
||||
CT_LINUX_5_3_or_older=y
|
||||
CT_LINUX_older_than_5_3=y
|
||||
CT_LINUX_4_8_or_older=y
|
||||
CT_LINUX_older_than_4_8=y
|
||||
CT_LINUX_later_than_3_7=y
|
||||
CT_LINUX_3_7_or_later=y
|
||||
CT_LINUX_later_than_3_2=y
|
||||
CT_LINUX_3_2_or_later=y
|
||||
CT_KERNEL_DEP_RSYNC=y
|
||||
CT_KERNEL_LINUX_VERBOSITY_0=y
|
||||
# CT_KERNEL_LINUX_VERBOSITY_1 is not set
|
||||
# CT_KERNEL_LINUX_VERBOSITY_2 is not set
|
||||
CT_KERNEL_LINUX_VERBOSE_LEVEL=0
|
||||
# CT_KERNEL_LINUX_INSTALL_CHECK is not set
|
||||
CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS"
|
||||
|
||||
#
|
||||
# Common kernel options
|
||||
#
|
||||
CT_SHARED_LIBS=y
|
||||
# end of Operating System
|
||||
|
||||
#
|
||||
# Binary utilities
|
||||
#
|
||||
CT_ARCH_BINFMT_ELF=y
|
||||
CT_BINUTILS_BINUTILS=y
|
||||
CT_BINUTILS="binutils"
|
||||
CT_BINUTILS_CHOICE_KSYM="BINUTILS"
|
||||
CT_BINUTILS_BINUTILS_SHOW=y
|
||||
|
||||
#
|
||||
# Options for binutils
|
||||
#
|
||||
CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS"
|
||||
CT_BINUTILS_DIR_NAME="binutils"
|
||||
CT_BINUTILS_USE_GNU=y
|
||||
# CT_BINUTILS_USE_LINARO is not set
|
||||
# CT_BINUTILS_USE_ORACLE is not set
|
||||
CT_BINUTILS_USE="BINUTILS"
|
||||
CT_BINUTILS_PKG_NAME="binutils"
|
||||
CT_BINUTILS_SRC_RELEASE=y
|
||||
# CT_BINUTILS_SRC_DEVEL is not set
|
||||
# CT_BINUTILS_SRC_CUSTOM is not set
|
||||
CT_BINUTILS_PATCH_GLOBAL=y
|
||||
# CT_BINUTILS_PATCH_BUNDLED is not set
|
||||
# CT_BINUTILS_PATCH_LOCAL is not set
|
||||
# CT_BINUTILS_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_BINUTILS_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_BINUTILS_PATCH_NONE is not set
|
||||
CT_BINUTILS_PATCH_ORDER="global"
|
||||
CT_BINUTILS_V_2_39=y
|
||||
# CT_BINUTILS_V_2_38 is not set
|
||||
# CT_BINUTILS_V_2_37 is not set
|
||||
# CT_BINUTILS_V_2_36 is not set
|
||||
# CT_BINUTILS_V_2_35 is not set
|
||||
# CT_BINUTILS_V_2_34 is not set
|
||||
# CT_BINUTILS_V_2_33 is not set
|
||||
# CT_BINUTILS_V_2_32 is not set
|
||||
# CT_BINUTILS_V_2_31 is not set
|
||||
# CT_BINUTILS_V_2_30 is not set
|
||||
# CT_BINUTILS_V_2_29 is not set
|
||||
# CT_BINUTILS_V_2_28 is not set
|
||||
# CT_BINUTILS_V_2_27 is not set
|
||||
# CT_BINUTILS_V_2_26 is not set
|
||||
CT_BINUTILS_VERSION="2.39"
|
||||
CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)"
|
||||
CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_BINUTILS_2_39_or_later=y
|
||||
CT_BINUTILS_2_39_or_older=y
|
||||
CT_BINUTILS_later_than_2_30=y
|
||||
CT_BINUTILS_2_30_or_later=y
|
||||
CT_BINUTILS_later_than_2_27=y
|
||||
CT_BINUTILS_2_27_or_later=y
|
||||
CT_BINUTILS_later_than_2_26=y
|
||||
CT_BINUTILS_2_26_or_later=y
|
||||
|
||||
#
|
||||
# GNU binutils
|
||||
#
|
||||
CT_BINUTILS_GOLD_SUPPORTS_ARCH=y
|
||||
CT_BINUTILS_GOLD_SUPPORT=y
|
||||
CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y
|
||||
CT_BINUTILS_LINKER_LD=y
|
||||
# CT_BINUTILS_LINKER_LD_GOLD is not set
|
||||
CT_BINUTILS_LINKERS_LIST="ld"
|
||||
CT_BINUTILS_LINKER_DEFAULT="bfd"
|
||||
CT_BINUTILS_PLUGINS=y
|
||||
CT_BINUTILS_RELRO=m
|
||||
CT_BINUTILS_DETERMINISTIC_ARCHIVES=y
|
||||
CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
|
||||
# CT_BINUTILS_FOR_TARGET is not set
|
||||
CT_ALL_BINUTILS_CHOICES="BINUTILS"
|
||||
# end of Binary utilities
|
||||
|
||||
#
|
||||
# C-library
|
||||
#
|
||||
CT_LIBC_GLIBC=y
|
||||
# CT_LIBC_MUSL is not set
|
||||
# CT_LIBC_UCLIBC_NG is not set
|
||||
CT_LIBC="glibc"
|
||||
CT_LIBC_CHOICE_KSYM="GLIBC"
|
||||
CT_LIBC_GLIBC_SHOW=y
|
||||
|
||||
#
|
||||
# Options for glibc
|
||||
#
|
||||
CT_LIBC_GLIBC_PKG_KSYM="GLIBC"
|
||||
CT_GLIBC_DIR_NAME="glibc"
|
||||
CT_GLIBC_USE_GNU=y
|
||||
# CT_GLIBC_USE_ORACLE is not set
|
||||
CT_GLIBC_USE="GLIBC"
|
||||
CT_GLIBC_PKG_NAME="glibc"
|
||||
CT_GLIBC_SRC_RELEASE=y
|
||||
# CT_GLIBC_SRC_DEVEL is not set
|
||||
# CT_GLIBC_SRC_CUSTOM is not set
|
||||
CT_GLIBC_PATCH_GLOBAL=y
|
||||
# CT_GLIBC_PATCH_BUNDLED is not set
|
||||
# CT_GLIBC_PATCH_LOCAL is not set
|
||||
# CT_GLIBC_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GLIBC_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GLIBC_PATCH_NONE is not set
|
||||
CT_GLIBC_PATCH_ORDER="global"
|
||||
# CT_GLIBC_V_2_36 is not set
|
||||
# CT_GLIBC_V_2_35 is not set
|
||||
# CT_GLIBC_V_2_34 is not set
|
||||
# CT_GLIBC_V_2_33 is not set
|
||||
# CT_GLIBC_V_2_32 is not set
|
||||
# CT_GLIBC_V_2_31 is not set
|
||||
# CT_GLIBC_V_2_30 is not set
|
||||
# CT_GLIBC_V_2_29 is not set
|
||||
# CT_GLIBC_V_2_28 is not set
|
||||
# CT_GLIBC_V_2_27 is not set
|
||||
# CT_GLIBC_V_2_26 is not set
|
||||
# CT_GLIBC_V_2_25 is not set
|
||||
# CT_GLIBC_V_2_24 is not set
|
||||
CT_GLIBC_V_2_23=y
|
||||
# CT_GLIBC_V_2_19 is not set
|
||||
# CT_GLIBC_V_2_17 is not set
|
||||
CT_GLIBC_VERSION="2.23"
|
||||
CT_GLIBC_MIRRORS="$(CT_Mirrors GNU glibc)"
|
||||
CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_GLIBC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GLIBC_2_36_or_older=y
|
||||
CT_GLIBC_older_than_2_36=y
|
||||
CT_GLIBC_2_34_or_older=y
|
||||
CT_GLIBC_older_than_2_34=y
|
||||
CT_GLIBC_2_32_or_older=y
|
||||
CT_GLIBC_older_than_2_32=y
|
||||
CT_GLIBC_2_31_or_older=y
|
||||
CT_GLIBC_older_than_2_31=y
|
||||
CT_GLIBC_2_30_or_older=y
|
||||
CT_GLIBC_older_than_2_30=y
|
||||
CT_GLIBC_2_29_or_older=y
|
||||
CT_GLIBC_older_than_2_29=y
|
||||
CT_GLIBC_2_28_or_older=y
|
||||
CT_GLIBC_older_than_2_28=y
|
||||
CT_GLIBC_2_27_or_older=y
|
||||
CT_GLIBC_older_than_2_27=y
|
||||
CT_GLIBC_2_26_or_older=y
|
||||
CT_GLIBC_older_than_2_26=y
|
||||
CT_GLIBC_2_25_or_older=y
|
||||
CT_GLIBC_older_than_2_25=y
|
||||
CT_GLIBC_2_24_or_older=y
|
||||
CT_GLIBC_older_than_2_24=y
|
||||
CT_GLIBC_2_23_or_later=y
|
||||
CT_GLIBC_2_23_or_older=y
|
||||
CT_GLIBC_later_than_2_20=y
|
||||
CT_GLIBC_2_20_or_later=y
|
||||
CT_GLIBC_later_than_2_17=y
|
||||
CT_GLIBC_2_17_or_later=y
|
||||
CT_GLIBC_later_than_2_14=y
|
||||
CT_GLIBC_2_14_or_later=y
|
||||
CT_GLIBC_DEP_KERNEL_HEADERS_VERSION=y
|
||||
CT_GLIBC_DEP_BINUTILS=y
|
||||
CT_GLIBC_DEP_GCC=y
|
||||
CT_GLIBC_DEP_PYTHON=y
|
||||
CT_GLIBC_SPARC_ALLOW_V7=y
|
||||
CT_THREADS="nptl"
|
||||
CT_GLIBC_HAS_LIBIDN_ADDON=y
|
||||
# CT_GLIBC_USE_LIBIDN_ADDON is not set
|
||||
CT_GLIBC_NO_SPARC_V8=y
|
||||
CT_GLIBC_HAS_OBSOLETE_RPC=y
|
||||
CT_GLIBC_EXTRA_CONFIG_ARRAY="--with-pic"
|
||||
CT_GLIBC_CONFIGPARMS=""
|
||||
# CT_GLIBC_ENABLE_DEBUG is not set
|
||||
CT_GLIBC_EXTRA_CFLAGS="-fPIC -DPIC -no-pie"
|
||||
CT_GLIBC_ENABLE_OBSOLETE_RPC=y
|
||||
# CT_GLIBC_ENABLE_FORTIFIED_BUILD is not set
|
||||
# CT_GLIBC_DISABLE_VERSIONING is not set
|
||||
CT_GLIBC_OLDEST_ABI=""
|
||||
CT_GLIBC_FORCE_UNWIND=y
|
||||
# CT_GLIBC_LOCALES is not set
|
||||
# CT_GLIBC_KERNEL_VERSION_NONE is not set
|
||||
CT_GLIBC_KERNEL_VERSION_AS_HEADERS=y
|
||||
# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set
|
||||
CT_GLIBC_MIN_KERNEL="4.4.302"
|
||||
CT_GLIBC_ENABLE_COMMON_FLAG=y
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG"
|
||||
CT_LIBC_SUPPORT_THREADS_ANY=y
|
||||
CT_LIBC_SUPPORT_THREADS_NATIVE=y
|
||||
|
||||
#
|
||||
# Common C library options
|
||||
#
|
||||
CT_THREADS_NATIVE=y
|
||||
# CT_CREATE_LDSO_CONF is not set
|
||||
CT_LIBC_XLDD=y
|
||||
# end of C-library
|
||||
|
||||
#
|
||||
# C compiler
|
||||
#
|
||||
CT_CC_CORE_NEEDED=y
|
||||
CT_CC_SUPPORT_CXX=y
|
||||
CT_CC_SUPPORT_FORTRAN=y
|
||||
CT_CC_SUPPORT_ADA=y
|
||||
CT_CC_SUPPORT_D=y
|
||||
CT_CC_SUPPORT_OBJC=y
|
||||
CT_CC_SUPPORT_OBJCXX=y
|
||||
CT_CC_SUPPORT_GOLANG=y
|
||||
CT_CC_GCC=y
|
||||
CT_CC="gcc"
|
||||
CT_CC_CHOICE_KSYM="GCC"
|
||||
CT_CC_GCC_SHOW=y
|
||||
|
||||
#
|
||||
# Options for gcc
|
||||
#
|
||||
CT_CC_GCC_PKG_KSYM="GCC"
|
||||
CT_GCC_DIR_NAME="gcc"
|
||||
CT_GCC_USE_GNU=y
|
||||
# CT_GCC_USE_LINARO is not set
|
||||
# CT_GCC_USE_ORACLE is not set
|
||||
CT_GCC_USE="GCC"
|
||||
CT_GCC_PKG_NAME="gcc"
|
||||
CT_GCC_SRC_RELEASE=y
|
||||
# CT_GCC_SRC_DEVEL is not set
|
||||
# CT_GCC_SRC_CUSTOM is not set
|
||||
CT_GCC_PATCH_GLOBAL=y
|
||||
# CT_GCC_PATCH_BUNDLED is not set
|
||||
# CT_GCC_PATCH_LOCAL is not set
|
||||
# CT_GCC_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GCC_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GCC_PATCH_NONE is not set
|
||||
CT_GCC_PATCH_ORDER="global"
|
||||
CT_GCC_V_12=y
|
||||
# CT_GCC_V_11 is not set
|
||||
# CT_GCC_V_10 is not set
|
||||
# CT_GCC_V_9 is not set
|
||||
# CT_GCC_V_8 is not set
|
||||
# CT_GCC_V_7 is not set
|
||||
# CT_GCC_V_6 is not set
|
||||
# CT_GCC_V_5 is not set
|
||||
# CT_GCC_V_4_9 is not set
|
||||
CT_GCC_VERSION="12.2.0"
|
||||
CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})"
|
||||
CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GCC_SIGNATURE_FORMAT=""
|
||||
CT_GCC_later_than_12=y
|
||||
CT_GCC_12_or_later=y
|
||||
CT_GCC_later_than_11=y
|
||||
CT_GCC_11_or_later=y
|
||||
CT_GCC_later_than_10=y
|
||||
CT_GCC_10_or_later=y
|
||||
CT_GCC_later_than_9=y
|
||||
CT_GCC_9_or_later=y
|
||||
CT_GCC_later_than_8=y
|
||||
CT_GCC_8_or_later=y
|
||||
CT_GCC_later_than_7=y
|
||||
CT_GCC_7_or_later=y
|
||||
CT_GCC_later_than_6=y
|
||||
CT_GCC_6_or_later=y
|
||||
CT_GCC_later_than_5=y
|
||||
CT_GCC_5_or_later=y
|
||||
CT_GCC_later_than_4_9=y
|
||||
CT_GCC_4_9_or_later=y
|
||||
CT_CC_GCC_ENABLE_PLUGINS=y
|
||||
CT_CC_GCC_HAS_LIBMPX=y
|
||||
CT_CC_GCC_ENABLE_CXX_FLAGS=""
|
||||
CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY="--enable-host-shared --enable-default-ssp"
|
||||
CT_CC_GCC_EXTRA_CONFIG_ARRAY="--enable-host-shared --enable-default-ssp --with-build-config=bootstrap-lto-lean --enable-link-serialization=2"
|
||||
# CT_CC_GCC_STATIC_LIBSTDCXX is not set
|
||||
# CT_CC_GCC_SYSTEM_ZLIB is not set
|
||||
CT_CC_GCC_CONFIG_TLS=m
|
||||
|
||||
#
|
||||
# Optimisation features
|
||||
#
|
||||
CT_CC_GCC_USE_GRAPHITE=y
|
||||
CT_CC_GCC_USE_LTO=y
|
||||
CT_CC_GCC_LTO_ZSTD=m
|
||||
|
||||
#
|
||||
# Settings for libraries running on target
|
||||
#
|
||||
CT_CC_GCC_ENABLE_DEFAULT_PIE=y
|
||||
# CT_CC_GCC_ENABLE_TARGET_OPTSPACE is not set
|
||||
# CT_CC_GCC_LIBMUDFLAP is not set
|
||||
CT_CC_GCC_LIBGOMP=y
|
||||
CT_CC_GCC_LIBSSP=m
|
||||
# CT_CC_GCC_LIBQUADMATH is not set
|
||||
# CT_CC_GCC_LIBSANITIZER is not set
|
||||
# CT_CC_GCC_LIBMPX is not set
|
||||
# CT_CC_GCC_LIBSTDCXX_VERBOSE is not set
|
||||
|
||||
#
|
||||
# Misc. obscure options.
|
||||
#
|
||||
CT_CC_CXA_ATEXIT=y
|
||||
CT_CC_GCC_TM_CLONE_REGISTRY=m
|
||||
# CT_CC_GCC_DISABLE_PCH is not set
|
||||
CT_CC_GCC_SJLJ_EXCEPTIONS=m
|
||||
CT_CC_GCC_LDBL_128=m
|
||||
# CT_CC_GCC_BUILD_ID is not set
|
||||
CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set
|
||||
CT_CC_GCC_LNK_HASH_STYLE=""
|
||||
CT_CC_GCC_DEC_FLOATS_AUTO=y
|
||||
# CT_CC_GCC_DEC_FLOATS_BID is not set
|
||||
# CT_CC_GCC_DEC_FLOATS_DPD is not set
|
||||
# CT_CC_GCC_DEC_FLOATS_NO is not set
|
||||
CT_CC_GCC_DEC_FLOATS=""
|
||||
CT_ALL_CC_CHOICES="GCC"
|
||||
|
||||
#
|
||||
# Additional supported languages:
|
||||
#
|
||||
CT_CC_LANG_CXX=y
|
||||
# CT_CC_LANG_FORTRAN is not set
|
||||
# CT_CC_LANG_ADA is not set
|
||||
# CT_CC_LANG_D is not set
|
||||
# CT_CC_LANG_OBJC is not set
|
||||
# CT_CC_LANG_OBJCXX is not set
|
||||
# CT_CC_LANG_GOLANG is not set
|
||||
CT_CC_LANG_OTHERS=""
|
||||
# end of C compiler
|
||||
|
||||
#
|
||||
# Debug facilities
|
||||
#
|
||||
# CT_DEBUG_DUMA is not set
|
||||
# CT_DEBUG_GDB is not set
|
||||
# CT_DEBUG_LTRACE is not set
|
||||
# CT_DEBUG_STRACE is not set
|
||||
CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE"
|
||||
# end of Debug facilities
|
||||
|
||||
#
|
||||
# Companion libraries
|
||||
#
|
||||
# CT_COMPLIBS_CHECK is not set
|
||||
# CT_COMP_LIBS_CLOOG is not set
|
||||
# CT_COMP_LIBS_EXPAT is not set
|
||||
CT_COMP_LIBS_GETTEXT=y
|
||||
CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT"
|
||||
CT_GETTEXT_DIR_NAME="gettext"
|
||||
CT_GETTEXT_PKG_NAME="gettext"
|
||||
CT_GETTEXT_SRC_RELEASE=y
|
||||
# CT_GETTEXT_SRC_DEVEL is not set
|
||||
# CT_GETTEXT_SRC_CUSTOM is not set
|
||||
CT_GETTEXT_PATCH_GLOBAL=y
|
||||
# CT_GETTEXT_PATCH_BUNDLED is not set
|
||||
# CT_GETTEXT_PATCH_LOCAL is not set
|
||||
# CT_GETTEXT_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GETTEXT_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GETTEXT_PATCH_NONE is not set
|
||||
CT_GETTEXT_PATCH_ORDER="global"
|
||||
CT_GETTEXT_V_0_21=y
|
||||
# CT_GETTEXT_V_0_20_1 is not set
|
||||
# CT_GETTEXT_V_0_19_8_1 is not set
|
||||
CT_GETTEXT_VERSION="0.21"
|
||||
CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)"
|
||||
CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GETTEXT_0_21_or_later=y
|
||||
CT_GETTEXT_0_21_or_older=y
|
||||
CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y
|
||||
|
||||
#
|
||||
# This version of gettext is not compatible with uClibc-NG. Select
|
||||
#
|
||||
|
||||
#
|
||||
# a different version if uClibc-NG is used on the target or (in a
|
||||
#
|
||||
|
||||
#
|
||||
# Canadian cross build) on the host.
|
||||
#
|
||||
CT_COMP_LIBS_GMP=y
|
||||
CT_COMP_LIBS_GMP_PKG_KSYM="GMP"
|
||||
CT_GMP_DIR_NAME="gmp"
|
||||
CT_GMP_PKG_NAME="gmp"
|
||||
CT_GMP_SRC_RELEASE=y
|
||||
# CT_GMP_SRC_DEVEL is not set
|
||||
# CT_GMP_SRC_CUSTOM is not set
|
||||
CT_GMP_PATCH_GLOBAL=y
|
||||
# CT_GMP_PATCH_BUNDLED is not set
|
||||
# CT_GMP_PATCH_LOCAL is not set
|
||||
# CT_GMP_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GMP_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GMP_PATCH_NONE is not set
|
||||
CT_GMP_PATCH_ORDER="global"
|
||||
CT_GMP_V_6_2=y
|
||||
# CT_GMP_V_6_1 is not set
|
||||
CT_GMP_VERSION="6.2.1"
|
||||
CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)"
|
||||
CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2"
|
||||
CT_GMP_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_COMP_LIBS_ISL=y
|
||||
CT_COMP_LIBS_ISL_PKG_KSYM="ISL"
|
||||
CT_ISL_DIR_NAME="isl"
|
||||
CT_ISL_PKG_NAME="isl"
|
||||
CT_ISL_SRC_RELEASE=y
|
||||
# CT_ISL_SRC_DEVEL is not set
|
||||
# CT_ISL_SRC_CUSTOM is not set
|
||||
CT_ISL_PATCH_GLOBAL=y
|
||||
# CT_ISL_PATCH_BUNDLED is not set
|
||||
# CT_ISL_PATCH_LOCAL is not set
|
||||
# CT_ISL_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_ISL_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_ISL_PATCH_NONE is not set
|
||||
CT_ISL_PATCH_ORDER="global"
|
||||
CT_ISL_V_0_24=y
|
||||
# CT_ISL_V_0_23 is not set
|
||||
# CT_ISL_V_0_22 is not set
|
||||
# CT_ISL_V_0_21 is not set
|
||||
# CT_ISL_V_0_20 is not set
|
||||
# CT_ISL_V_0_19 is not set
|
||||
# CT_ISL_V_0_18 is not set
|
||||
# CT_ISL_V_0_17 is not set
|
||||
# CT_ISL_V_0_16 is not set
|
||||
# CT_ISL_V_0_15 is not set
|
||||
# CT_ISL_V_0_11 is not set
|
||||
CT_ISL_VERSION="0.24"
|
||||
CT_ISL_MIRRORS="https://libisl.sourceforge.io"
|
||||
CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_ISL_SIGNATURE_FORMAT=""
|
||||
CT_ISL_later_than_0_18=y
|
||||
CT_ISL_0_18_or_later=y
|
||||
CT_ISL_later_than_0_15=y
|
||||
CT_ISL_0_15_or_later=y
|
||||
# CT_COMP_LIBS_LIBELF is not set
|
||||
CT_COMP_LIBS_LIBICONV=y
|
||||
CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV"
|
||||
CT_LIBICONV_DIR_NAME="libiconv"
|
||||
CT_LIBICONV_PKG_NAME="libiconv"
|
||||
CT_LIBICONV_SRC_RELEASE=y
|
||||
# CT_LIBICONV_SRC_DEVEL is not set
|
||||
# CT_LIBICONV_SRC_CUSTOM is not set
|
||||
CT_LIBICONV_PATCH_GLOBAL=y
|
||||
# CT_LIBICONV_PATCH_BUNDLED is not set
|
||||
# CT_LIBICONV_PATCH_LOCAL is not set
|
||||
# CT_LIBICONV_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_LIBICONV_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_LIBICONV_PATCH_NONE is not set
|
||||
CT_LIBICONV_PATCH_ORDER="global"
|
||||
CT_LIBICONV_V_1_16=y
|
||||
# CT_LIBICONV_V_1_15 is not set
|
||||
CT_LIBICONV_VERSION="1.16"
|
||||
CT_LIBICONV_MIRRORS="$(CT_Mirrors GNU libiconv)"
|
||||
CT_LIBICONV_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LIBICONV_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LIBICONV_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_LIBICONV_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_COMP_LIBS_MPC=y
|
||||
CT_COMP_LIBS_MPC_PKG_KSYM="MPC"
|
||||
CT_MPC_DIR_NAME="mpc"
|
||||
CT_MPC_PKG_NAME="mpc"
|
||||
CT_MPC_SRC_RELEASE=y
|
||||
# CT_MPC_SRC_DEVEL is not set
|
||||
# CT_MPC_SRC_CUSTOM is not set
|
||||
CT_MPC_PATCH_GLOBAL=y
|
||||
# CT_MPC_PATCH_BUNDLED is not set
|
||||
# CT_MPC_PATCH_LOCAL is not set
|
||||
# CT_MPC_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_MPC_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_MPC_PATCH_NONE is not set
|
||||
CT_MPC_PATCH_ORDER="global"
|
||||
CT_MPC_V_1_2=y
|
||||
# CT_MPC_V_1_1 is not set
|
||||
# CT_MPC_V_1_0 is not set
|
||||
CT_MPC_VERSION="1.2.1"
|
||||
CT_MPC_MIRRORS="http://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_MPC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_MPC_later_than_1_1_0=y
|
||||
CT_MPC_1_1_0_or_later=y
|
||||
CT_COMP_LIBS_MPFR=y
|
||||
CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR"
|
||||
CT_MPFR_DIR_NAME="mpfr"
|
||||
CT_MPFR_PKG_NAME="mpfr"
|
||||
CT_MPFR_SRC_RELEASE=y
|
||||
# CT_MPFR_SRC_DEVEL is not set
|
||||
# CT_MPFR_SRC_CUSTOM is not set
|
||||
CT_MPFR_PATCH_GLOBAL=y
|
||||
# CT_MPFR_PATCH_BUNDLED is not set
|
||||
# CT_MPFR_PATCH_LOCAL is not set
|
||||
# CT_MPFR_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_MPFR_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_MPFR_PATCH_NONE is not set
|
||||
CT_MPFR_PATCH_ORDER="global"
|
||||
CT_MPFR_V_4_1=y
|
||||
# CT_MPFR_V_4_0 is not set
|
||||
# CT_MPFR_V_3_1 is not set
|
||||
CT_MPFR_VERSION="4.1.0"
|
||||
CT_MPFR_MIRRORS="http://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip"
|
||||
CT_MPFR_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_MPFR_later_than_4_0_0=y
|
||||
CT_MPFR_4_0_0_or_later=y
|
||||
CT_COMP_LIBS_NCURSES=y
|
||||
CT_COMP_LIBS_NCURSES_PKG_KSYM="NCURSES"
|
||||
CT_NCURSES_DIR_NAME="ncurses"
|
||||
CT_NCURSES_PKG_NAME="ncurses"
|
||||
CT_NCURSES_SRC_RELEASE=y
|
||||
# CT_NCURSES_SRC_DEVEL is not set
|
||||
# CT_NCURSES_SRC_CUSTOM is not set
|
||||
CT_NCURSES_PATCH_GLOBAL=y
|
||||
# CT_NCURSES_PATCH_BUNDLED is not set
|
||||
# CT_NCURSES_PATCH_LOCAL is not set
|
||||
# CT_NCURSES_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_NCURSES_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_NCURSES_PATCH_NONE is not set
|
||||
CT_NCURSES_PATCH_ORDER="global"
|
||||
CT_NCURSES_V_6_2=y
|
||||
# CT_NCURSES_V_6_1 is not set
|
||||
# CT_NCURSES_V_6_0 is not set
|
||||
CT_NCURSES_VERSION="6.2"
|
||||
CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)"
|
||||
CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_NCURSES_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_NCURSES_SIGNATURE_FORMAT="packed/.sig"
|
||||
# CT_NCURSES_NEW_ABI is not set
|
||||
CT_NCURSES_HOST_CONFIG_ARGS=""
|
||||
CT_NCURSES_HOST_DISABLE_DB=y
|
||||
CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100"
|
||||
CT_NCURSES_TARGET_CONFIG_ARGS=""
|
||||
# CT_NCURSES_TARGET_DISABLE_DB is not set
|
||||
CT_NCURSES_TARGET_FALLBACKS=""
|
||||
CT_COMP_LIBS_ZLIB=y
|
||||
CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB"
|
||||
CT_ZLIB_DIR_NAME="zlib"
|
||||
CT_ZLIB_PKG_NAME="zlib"
|
||||
CT_ZLIB_SRC_RELEASE=y
|
||||
# CT_ZLIB_SRC_DEVEL is not set
|
||||
# CT_ZLIB_SRC_CUSTOM is not set
|
||||
CT_ZLIB_PATCH_GLOBAL=y
|
||||
# CT_ZLIB_PATCH_BUNDLED is not set
|
||||
# CT_ZLIB_PATCH_LOCAL is not set
|
||||
# CT_ZLIB_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_ZLIB_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_ZLIB_PATCH_NONE is not set
|
||||
CT_ZLIB_PATCH_ORDER="global"
|
||||
CT_ZLIB_V_1_2_13=y
|
||||
# CT_ZLIB_V_1_2_12 is not set
|
||||
CT_ZLIB_VERSION="1.2.13"
|
||||
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
|
||||
CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_ZLIB_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB"
|
||||
CT_LIBICONV_NEEDED=y
|
||||
CT_GETTEXT_NEEDED=y
|
||||
CT_GMP_NEEDED=y
|
||||
CT_MPFR_NEEDED=y
|
||||
CT_ISL_NEEDED=y
|
||||
CT_MPC_NEEDED=y
|
||||
CT_NCURSES_NEEDED=y
|
||||
CT_ZLIB_NEEDED=y
|
||||
CT_LIBICONV=y
|
||||
CT_GETTEXT=y
|
||||
CT_GMP=y
|
||||
CT_MPFR=y
|
||||
CT_ISL=y
|
||||
CT_MPC=y
|
||||
CT_NCURSES=y
|
||||
CT_ZLIB=y
|
||||
# end of Companion libraries
|
||||
|
||||
#
|
||||
# Companion tools
|
||||
#
|
||||
# CT_COMP_TOOLS_FOR_HOST is not set
|
||||
# CT_COMP_TOOLS_AUTOCONF is not set
|
||||
# CT_COMP_TOOLS_AUTOMAKE is not set
|
||||
# CT_COMP_TOOLS_BISON is not set
|
||||
# CT_COMP_TOOLS_DTC is not set
|
||||
# CT_COMP_TOOLS_LIBTOOL is not set
|
||||
# CT_COMP_TOOLS_M4 is not set
|
||||
# CT_COMP_TOOLS_MAKE is not set
|
||||
CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE"
|
||||
# end of Companion tools
|
||||
|
||||
#
|
||||
# Test suite
|
||||
#
|
||||
# CT_TEST_SUITE_GCC is not set
|
||||
# end of Test suite
|
||||
Executable
+17
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
if [[ $# != 2 ]]; then
|
||||
echo "Invalid arguments"
|
||||
exit 1
|
||||
fi
|
||||
IN="$1"
|
||||
OUT="$2"
|
||||
|
||||
TMPDIR="$(mktemp -d)"
|
||||
trap "rm -rf '$TMPDIR'" EXIT
|
||||
cd "$TMPDIR"
|
||||
|
||||
set -x
|
||||
python3 /opt/implib/implib-gen.py --target x86_64-linux-gnu --dlopen --lazy-load --verbose "$IN"
|
||||
${FFBUILD_CROSS_PREFIX}gcc $CFLAGS $STAGE_CFLAGS -DIMPLIB_HIDDEN_SHIMS -c *.tramp.S *.init.c
|
||||
${FFBUILD_CROSS_PREFIX}ar -rcs "$OUT" *.tramp.o *.init.o
|
||||
@@ -0,0 +1,16 @@
|
||||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(CMAKE_SYSTEM_PROCESSOR x86_64)
|
||||
|
||||
set(triple x86_64-ffbuild-linux-gnu)
|
||||
|
||||
set(CMAKE_C_COMPILER ${triple}-gcc)
|
||||
set(CMAKE_CXX_COMPILER ${triple}-g++)
|
||||
set(CMAKE_RANLIB ${triple}-gcc-ranlib)
|
||||
set(CMAKE_AR ${triple}-gcc-ar)
|
||||
|
||||
set(CMAKE_SYSROOT /opt/ct-ng/${triple}/sysroot)
|
||||
set(CMAKE_FIND_ROOT_PATH /opt/ct-ng /opt/ct-ng/${triple}/sysroot /opt/ffbuild)
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
@@ -0,0 +1,63 @@
|
||||
ARG GH_REPO=ghcr.io/jellyfin/jellyfin-ffmpeg
|
||||
FROM $GH_REPO/base:latest
|
||||
|
||||
RUN --mount=src=ct-ng-config,dst=/.config \
|
||||
git clone --filter=blob:none https://github.com/crosstool-ng/crosstool-ng.git /ct-ng && cd /ct-ng && \
|
||||
./bootstrap && \
|
||||
./configure --enable-local && \
|
||||
make -j$(nproc) && \
|
||||
cp /.config .config && \
|
||||
./ct-ng build && \
|
||||
cd / && \
|
||||
rm -rf ct-ng
|
||||
|
||||
# Prepare cross environment to heavily favour static builds
|
||||
RUN \
|
||||
find /opt/ct-ng -type l \
|
||||
-and -name '*.so' \
|
||||
-and -not -ipath '*plugin*' \
|
||||
-and -not -name 'libdl.*' \
|
||||
-and -not -name 'libc.*' \
|
||||
-and -not -name 'libm.*' \
|
||||
-and -not -name 'libmvec.*' \
|
||||
-and -not -name 'librt.*' \
|
||||
-and -not -name 'libpthread.*' \
|
||||
-delete && \
|
||||
find /opt/ct-ng \
|
||||
-name 'libdl.a' \
|
||||
-or -name 'libc.a' \
|
||||
-or -name 'libm.a' \
|
||||
-or -name 'libmvec.a' \
|
||||
-or -name 'librt.a' \
|
||||
-or -name 'libpthread.a' \
|
||||
-delete && \
|
||||
mkdir /opt/ffbuild
|
||||
|
||||
RUN rustup target add aarch64-unknown-linux-gnu
|
||||
|
||||
ADD toolchain.cmake /toolchain.cmake
|
||||
ADD cross.meson /cross.meson
|
||||
|
||||
ADD gen-implib.sh /usr/bin/gen-implib
|
||||
RUN git clone --filter=blob:none --depth=1 https://github.com/yugr/Implib.so /opt/implib
|
||||
|
||||
ENV FFBUILD_TOOLCHAIN=aarch64-ffbuild-linux-gnu
|
||||
ENV PATH="/opt/ct-ng/bin:${PATH}" \
|
||||
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --pkg-config-flags=--static --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=aarch64 --target-os=linux" \
|
||||
FFBUILD_CROSS_PREFIX="${FFBUILD_TOOLCHAIN}-" \
|
||||
FFBUILD_RUST_TARGET="aarch64-unknown-linux-gnu" \
|
||||
FFBUILD_PREFIX=/opt/ffbuild \
|
||||
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
|
||||
PKG_CONFIG=pkg-config \
|
||||
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \
|
||||
CC="${FFBUILD_TOOLCHAIN}-gcc" \
|
||||
CXX="${FFBUILD_TOOLCHAIN}-g++" \
|
||||
LD="${FFBUILD_TOOLCHAIN}-ld" \
|
||||
AR="${FFBUILD_TOOLCHAIN}-gcc-ar" \
|
||||
RANLIB="${FFBUILD_TOOLCHAIN}-gcc-ranlib" \
|
||||
NM="${FFBUILD_TOOLCHAIN}-gcc-nm" \
|
||||
CFLAGS="-static-libgcc -static-libstdc++ -I/opt/ffbuild/include -O2 -pipe -fPIC -DPIC -D_FORTIFY_SOURCE=2 -fstack-protector-strong -pthread" \
|
||||
CXXFLAGS="-static-libgcc -static-libstdc++ -I/opt/ffbuild/include -O2 -pipe -fPIC -DPIC -D_FORTIFY_SOURCE=2 -fstack-protector-strong -pthread" \
|
||||
LDFLAGS="-static-libgcc -static-libstdc++ -L/opt/ffbuild/lib -O2 -pipe -fstack-protector-strong -Wl,-z,relro,-z,now -pthread -lm" \
|
||||
STAGE_CFLAGS="-fvisibility=hidden -fno-semantic-interposition" \
|
||||
STAGE_CXXFLAGS="-fvisibility=hidden -fno-semantic-interposition"
|
||||
@@ -0,0 +1,13 @@
|
||||
[binaries]
|
||||
c = 'aarch64-ffbuild-linux-gnu-gcc'
|
||||
cpp = 'aarch64-ffbuild-linux-gnu-g++'
|
||||
ld = 'aarch64-ffbuild-linux-gnu-ld'
|
||||
ar = 'aarch64-ffbuild-linux-gnu-gcc-ar'
|
||||
ranlib = 'x86_64-ffbuild-linux-gnu-gcc-ranlib'
|
||||
strip = 'aarch64-ffbuild-linux-gnu-strip'
|
||||
|
||||
[host_machine]
|
||||
system = 'linux'
|
||||
cpu_family = 'aarch64'
|
||||
cpu = 'aarch64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,957 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# crosstool-NG 1.25.0.90_cf9beb1 Configuration
|
||||
#
|
||||
CT_CONFIGURE_has_static_link=y
|
||||
CT_CONFIGURE_has_cxx11=y
|
||||
CT_CONFIGURE_has_wget=y
|
||||
CT_CONFIGURE_has_curl=y
|
||||
CT_CONFIGURE_has_meson=y
|
||||
CT_CONFIGURE_has_ninja=y
|
||||
CT_CONFIGURE_has_rsync=y
|
||||
CT_CONFIGURE_has_make_3_81_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_0_or_newer=y
|
||||
CT_CONFIGURE_has_libtool_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtoolize_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_autoconf_2_65_or_newer=y
|
||||
CT_CONFIGURE_has_autoreconf_2_65_or_newer=y
|
||||
CT_CONFIGURE_has_automake_1_15_or_newer=y
|
||||
CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y
|
||||
CT_CONFIGURE_has_python_3_4_or_newer=y
|
||||
CT_CONFIGURE_has_bison_2_7_or_newer=y
|
||||
CT_CONFIGURE_has_bison_3_0_4_or_newer=y
|
||||
CT_CONFIGURE_has_python=y
|
||||
CT_CONFIGURE_has_svn=y
|
||||
CT_CONFIGURE_has_git=y
|
||||
CT_CONFIGURE_has_md5sum=y
|
||||
CT_CONFIGURE_has_sha1sum=y
|
||||
CT_CONFIGURE_has_sha256sum=y
|
||||
CT_CONFIGURE_has_sha512sum=y
|
||||
CT_CONFIGURE_has_install_with_strip_program=y
|
||||
CT_VERSION="1.25.0.90_cf9beb1"
|
||||
CT_VCHECK=""
|
||||
CT_CONFIG_VERSION_ENV="4"
|
||||
CT_CONFIG_VERSION_CURRENT="4"
|
||||
CT_CONFIG_VERSION="4"
|
||||
CT_MODULES=y
|
||||
|
||||
#
|
||||
# Paths and misc options
|
||||
#
|
||||
|
||||
#
|
||||
# crosstool-NG behavior
|
||||
#
|
||||
CT_OBSOLETE=y
|
||||
CT_EXPERIMENTAL=y
|
||||
CT_ALLOW_BUILD_AS_ROOT=y
|
||||
CT_ALLOW_BUILD_AS_ROOT_SURE=y
|
||||
# CT_DEBUG_CT is not set
|
||||
|
||||
#
|
||||
# Paths
|
||||
#
|
||||
CT_LOCAL_TARBALLS_DIR="${HOME}/src"
|
||||
# CT_SAVE_TARBALLS is not set
|
||||
# CT_TARBALLS_BUILDROOT_LAYOUT is not set
|
||||
CT_WORK_DIR="${CT_TOP_DIR}/build"
|
||||
CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}"
|
||||
CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build"
|
||||
CT_PREFIX_DIR="/opt/ct-ng"
|
||||
CT_RM_RF_PREFIX_DIR=y
|
||||
CT_REMOVE_DOCS=y
|
||||
# CT_INSTALL_LICENSES is not set
|
||||
# CT_PREFIX_DIR_RO is not set
|
||||
CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y
|
||||
CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES=y
|
||||
|
||||
#
|
||||
# Downloading
|
||||
#
|
||||
CT_DOWNLOAD_AGENT_WGET=y
|
||||
# CT_DOWNLOAD_AGENT_CURL is not set
|
||||
# CT_DOWNLOAD_AGENT_NONE is not set
|
||||
# CT_FORBID_DOWNLOAD is not set
|
||||
# CT_FORCE_DOWNLOAD is not set
|
||||
CT_CONNECT_TIMEOUT=10
|
||||
CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=3 -nc --progress=dot:binary"
|
||||
# CT_ONLY_DOWNLOAD is not set
|
||||
# CT_USE_MIRROR is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST=y
|
||||
CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512"
|
||||
# CT_VERIFY_DOWNLOAD_SIGNATURE is not set
|
||||
|
||||
#
|
||||
# Extracting
|
||||
#
|
||||
# CT_FORCE_EXTRACT is not set
|
||||
CT_OVERRIDE_CONFIG_GUESS_SUB=y
|
||||
# CT_ONLY_EXTRACT is not set
|
||||
CT_PATCH_BUNDLED=y
|
||||
# CT_PATCH_LOCAL is not set
|
||||
# CT_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_PATCH_NONE is not set
|
||||
CT_PATCH_ORDER="bundled"
|
||||
|
||||
#
|
||||
# Build behavior
|
||||
#
|
||||
CT_PARALLEL_JOBS=0
|
||||
CT_LOAD=""
|
||||
CT_USE_PIPES=y
|
||||
CT_EXTRA_CFLAGS_FOR_BUILD="-fPIC -DPIC"
|
||||
CT_EXTRA_CXXFLAGS_FOR_BUILD="-fPIC -DPIC"
|
||||
CT_EXTRA_LDFLAGS_FOR_BUILD=""
|
||||
CT_EXTRA_CFLAGS_FOR_HOST="-fPIC -DPIC"
|
||||
CT_EXTRA_LDFLAGS_FOR_HOST=""
|
||||
# CT_CONFIG_SHELL_SH is not set
|
||||
# CT_CONFIG_SHELL_ASH is not set
|
||||
CT_CONFIG_SHELL_BASH=y
|
||||
# CT_CONFIG_SHELL_CUSTOM is not set
|
||||
CT_CONFIG_SHELL="${bash}"
|
||||
|
||||
#
|
||||
# Logging
|
||||
#
|
||||
# CT_LOG_ERROR is not set
|
||||
# CT_LOG_WARN is not set
|
||||
# CT_LOG_INFO is not set
|
||||
# CT_LOG_EXTRA is not set
|
||||
# CT_LOG_ALL is not set
|
||||
CT_LOG_DEBUG=y
|
||||
CT_LOG_LEVEL_MAX="DEBUG"
|
||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||
# CT_LOG_PROGRESS_BAR is not set
|
||||
# CT_LOG_TO_FILE is not set
|
||||
# end of Paths and misc options
|
||||
|
||||
#
|
||||
# Target options
|
||||
#
|
||||
# CT_ARCH_ALPHA is not set
|
||||
# CT_ARCH_ARC is not set
|
||||
CT_ARCH_ARM=y
|
||||
# CT_ARCH_AVR is not set
|
||||
# CT_ARCH_C6X is not set
|
||||
# CT_ARCH_LOONGARCH is not set
|
||||
# CT_ARCH_M68K is not set
|
||||
# CT_ARCH_MICROBLAZE is not set
|
||||
# CT_ARCH_MIPS is not set
|
||||
# CT_ARCH_MOXIE is not set
|
||||
# CT_ARCH_MSP430 is not set
|
||||
# CT_ARCH_NIOS2 is not set
|
||||
# CT_ARCH_POWERPC is not set
|
||||
# CT_ARCH_PRU is not set
|
||||
# CT_ARCH_RISCV is not set
|
||||
# CT_ARCH_S390 is not set
|
||||
# CT_ARCH_SH is not set
|
||||
# CT_ARCH_SPARC is not set
|
||||
# CT_ARCH_X86 is not set
|
||||
# CT_ARCH_XTENSA is not set
|
||||
CT_ARCH="arm"
|
||||
CT_ARCH_CHOICE_KSYM="ARM"
|
||||
CT_ARCH_CPU=""
|
||||
CT_ARCH_TUNE=""
|
||||
CT_ARCH_ARM_SHOW=y
|
||||
|
||||
#
|
||||
# Options for arm
|
||||
#
|
||||
CT_ARCH_ARM_PKG_KSYM=""
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR C6X LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ARCH_SUFFIX=""
|
||||
# CT_OMIT_TARGET_VENDOR is not set
|
||||
|
||||
#
|
||||
# Generic target options
|
||||
#
|
||||
# CT_MULTILIB is not set
|
||||
CT_DEMULTILIB=y
|
||||
CT_ARCH_SUPPORTS_BOTH_MMU=y
|
||||
CT_ARCH_DEFAULT_HAS_MMU=y
|
||||
CT_ARCH_USE_MMU=y
|
||||
CT_ARCH_SUPPORTS_FLAT_FORMAT=y
|
||||
CT_ARCH_SUPPORTS_LIBSANITIZER=y
|
||||
CT_ARCH_SUPPORTS_EITHER_ENDIAN=y
|
||||
CT_ARCH_DEFAULT_LE=y
|
||||
# CT_ARCH_BE is not set
|
||||
CT_ARCH_LE=y
|
||||
CT_ARCH_ENDIAN="little"
|
||||
CT_ARCH_SUPPORTS_32=y
|
||||
CT_ARCH_SUPPORTS_64=y
|
||||
CT_ARCH_DEFAULT_32=y
|
||||
CT_ARCH_BITNESS=64
|
||||
# CT_ARCH_32 is not set
|
||||
CT_ARCH_64=y
|
||||
|
||||
#
|
||||
# Target optimisations
|
||||
#
|
||||
CT_ARCH_SUPPORTS_WITH_ARCH=y
|
||||
CT_ARCH_SUPPORTS_WITH_CPU=y
|
||||
CT_ARCH_SUPPORTS_WITH_TUNE=y
|
||||
CT_ARCH_EXCLUSIVE_WITH_CPU=y
|
||||
CT_ARCH_ARCH=""
|
||||
CT_TARGET_CFLAGS="-fPIC -DPIC"
|
||||
CT_TARGET_LDFLAGS=""
|
||||
# end of Target options
|
||||
|
||||
#
|
||||
# Toolchain options
|
||||
#
|
||||
|
||||
#
|
||||
# General toolchain options
|
||||
#
|
||||
CT_USE_SYSROOT=y
|
||||
CT_SYSROOT_NAME="sysroot"
|
||||
CT_SYSROOT_DIR_PREFIX=""
|
||||
# CT_STATIC_TOOLCHAIN is not set
|
||||
CT_SHOW_CT_VERSION=y
|
||||
CT_TOOLCHAIN_PKGVERSION=""
|
||||
CT_TOOLCHAIN_BUGURL=""
|
||||
|
||||
#
|
||||
# Tuple completion and aliasing
|
||||
#
|
||||
CT_TARGET_VENDOR="ffbuild"
|
||||
CT_TARGET_ALIAS_SED_EXPR=""
|
||||
CT_TARGET_ALIAS=""
|
||||
|
||||
#
|
||||
# Toolchain type
|
||||
#
|
||||
# CT_NATIVE is not set
|
||||
CT_CROSS=y
|
||||
# CT_CROSS_NATIVE is not set
|
||||
# CT_CANADIAN is not set
|
||||
CT_TOOLCHAIN_TYPE="cross"
|
||||
|
||||
#
|
||||
# Build system
|
||||
#
|
||||
CT_BUILD=""
|
||||
CT_BUILD_PREFIX=""
|
||||
CT_BUILD_SUFFIX=""
|
||||
|
||||
#
|
||||
# Misc options
|
||||
#
|
||||
# CT_TOOLCHAIN_ENABLE_NLS is not set
|
||||
# end of Toolchain options
|
||||
|
||||
#
|
||||
# Operating System
|
||||
#
|
||||
CT_KERNEL_SUPPORTS_SHARED_LIBS=y
|
||||
# CT_KERNEL_BARE_METAL is not set
|
||||
CT_KERNEL_LINUX=y
|
||||
CT_KERNEL="linux"
|
||||
CT_KERNEL_CHOICE_KSYM="LINUX"
|
||||
CT_KERNEL_LINUX_SHOW=y
|
||||
|
||||
#
|
||||
# Options for linux
|
||||
#
|
||||
CT_KERNEL_LINUX_PKG_KSYM="LINUX"
|
||||
CT_LINUX_DIR_NAME="linux"
|
||||
CT_LINUX_USE_WWW_KERNEL_ORG=y
|
||||
# CT_LINUX_USE_ORACLE is not set
|
||||
CT_LINUX_USE="LINUX"
|
||||
CT_LINUX_PKG_NAME="linux"
|
||||
CT_LINUX_SRC_RELEASE=y
|
||||
# CT_LINUX_SRC_DEVEL is not set
|
||||
# CT_LINUX_SRC_CUSTOM is not set
|
||||
CT_LINUX_PATCH_GLOBAL=y
|
||||
# CT_LINUX_PATCH_BUNDLED is not set
|
||||
# CT_LINUX_PATCH_LOCAL is not set
|
||||
# CT_LINUX_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_LINUX_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_LINUX_PATCH_NONE is not set
|
||||
CT_LINUX_PATCH_ORDER="global"
|
||||
# CT_LINUX_V_6_0 is not set
|
||||
# CT_LINUX_V_5_19 is not set
|
||||
# CT_LINUX_V_5_18 is not set
|
||||
# CT_LINUX_V_5_17 is not set
|
||||
# CT_LINUX_V_5_16 is not set
|
||||
# CT_LINUX_V_5_15 is not set
|
||||
# CT_LINUX_V_5_14 is not set
|
||||
# CT_LINUX_V_5_13 is not set
|
||||
# CT_LINUX_V_5_12 is not set
|
||||
# CT_LINUX_V_5_11 is not set
|
||||
# CT_LINUX_V_5_10 is not set
|
||||
# CT_LINUX_V_5_9 is not set
|
||||
# CT_LINUX_V_5_8 is not set
|
||||
# CT_LINUX_V_5_7 is not set
|
||||
# CT_LINUX_V_5_5 is not set
|
||||
# CT_LINUX_V_5_4 is not set
|
||||
# CT_LINUX_V_5_3 is not set
|
||||
# CT_LINUX_V_5_2 is not set
|
||||
# CT_LINUX_V_5_1 is not set
|
||||
# CT_LINUX_V_5_0 is not set
|
||||
# CT_LINUX_V_4_20 is not set
|
||||
# CT_LINUX_V_4_19 is not set
|
||||
# CT_LINUX_V_4_18 is not set
|
||||
# CT_LINUX_V_4_17 is not set
|
||||
# CT_LINUX_V_4_16 is not set
|
||||
CT_LINUX_V_4_15=y
|
||||
# CT_LINUX_V_4_14 is not set
|
||||
# CT_LINUX_V_4_13 is not set
|
||||
# CT_LINUX_V_4_12 is not set
|
||||
# CT_LINUX_V_4_11 is not set
|
||||
# CT_LINUX_V_4_10 is not set
|
||||
# CT_LINUX_V_4_9 is not set
|
||||
# CT_LINUX_V_4_4 is not set
|
||||
# CT_LINUX_V_4_1 is not set
|
||||
# CT_LINUX_V_3_18 is not set
|
||||
# CT_LINUX_V_3_16 is not set
|
||||
# CT_LINUX_V_3_13 is not set
|
||||
# CT_LINUX_V_3_12 is not set
|
||||
# CT_LINUX_V_3_10 is not set
|
||||
CT_LINUX_VERSION="4.15.18"
|
||||
CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})"
|
||||
CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_LINUX_SIGNATURE_FORMAT="unpacked/.sign"
|
||||
CT_LINUX_5_19_or_older=y
|
||||
CT_LINUX_older_than_5_19=y
|
||||
CT_LINUX_5_12_or_older=y
|
||||
CT_LINUX_older_than_5_12=y
|
||||
CT_LINUX_5_5_or_older=y
|
||||
CT_LINUX_older_than_5_5=y
|
||||
CT_LINUX_5_3_or_older=y
|
||||
CT_LINUX_older_than_5_3=y
|
||||
CT_LINUX_later_than_4_8=y
|
||||
CT_LINUX_4_8_or_later=y
|
||||
CT_LINUX_later_than_3_7=y
|
||||
CT_LINUX_3_7_or_later=y
|
||||
CT_LINUX_REQUIRE_3_7_or_later=y
|
||||
CT_LINUX_later_than_3_2=y
|
||||
CT_LINUX_3_2_or_later=y
|
||||
CT_LINUX_REQUIRE_3_2_or_later=y
|
||||
CT_KERNEL_DEP_RSYNC=y
|
||||
CT_KERNEL_LINUX_VERBOSITY_0=y
|
||||
# CT_KERNEL_LINUX_VERBOSITY_1 is not set
|
||||
# CT_KERNEL_LINUX_VERBOSITY_2 is not set
|
||||
CT_KERNEL_LINUX_VERBOSE_LEVEL=0
|
||||
# CT_KERNEL_LINUX_INSTALL_CHECK is not set
|
||||
CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS"
|
||||
|
||||
#
|
||||
# Common kernel options
|
||||
#
|
||||
CT_SHARED_LIBS=y
|
||||
# end of Operating System
|
||||
|
||||
#
|
||||
# Binary utilities
|
||||
#
|
||||
CT_ARCH_BINFMT_ELF=y
|
||||
CT_BINUTILS_BINUTILS=y
|
||||
CT_BINUTILS="binutils"
|
||||
CT_BINUTILS_CHOICE_KSYM="BINUTILS"
|
||||
CT_BINUTILS_BINUTILS_SHOW=y
|
||||
|
||||
#
|
||||
# Options for binutils
|
||||
#
|
||||
CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS"
|
||||
CT_BINUTILS_DIR_NAME="binutils"
|
||||
CT_BINUTILS_USE_GNU=y
|
||||
# CT_BINUTILS_USE_LINARO is not set
|
||||
# CT_BINUTILS_USE_ORACLE is not set
|
||||
CT_BINUTILS_USE="BINUTILS"
|
||||
CT_BINUTILS_PKG_NAME="binutils"
|
||||
CT_BINUTILS_SRC_RELEASE=y
|
||||
# CT_BINUTILS_SRC_DEVEL is not set
|
||||
# CT_BINUTILS_SRC_CUSTOM is not set
|
||||
CT_BINUTILS_PATCH_GLOBAL=y
|
||||
# CT_BINUTILS_PATCH_BUNDLED is not set
|
||||
# CT_BINUTILS_PATCH_LOCAL is not set
|
||||
# CT_BINUTILS_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_BINUTILS_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_BINUTILS_PATCH_NONE is not set
|
||||
CT_BINUTILS_PATCH_ORDER="global"
|
||||
CT_BINUTILS_V_2_39=y
|
||||
# CT_BINUTILS_V_2_38 is not set
|
||||
# CT_BINUTILS_V_2_37 is not set
|
||||
# CT_BINUTILS_V_2_36 is not set
|
||||
# CT_BINUTILS_V_2_35 is not set
|
||||
# CT_BINUTILS_V_2_34 is not set
|
||||
# CT_BINUTILS_V_2_33 is not set
|
||||
# CT_BINUTILS_V_2_32 is not set
|
||||
# CT_BINUTILS_V_2_31 is not set
|
||||
# CT_BINUTILS_V_2_30 is not set
|
||||
# CT_BINUTILS_V_2_29 is not set
|
||||
# CT_BINUTILS_V_2_28 is not set
|
||||
# CT_BINUTILS_V_2_27 is not set
|
||||
# CT_BINUTILS_V_2_26 is not set
|
||||
CT_BINUTILS_VERSION="2.39"
|
||||
CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)"
|
||||
CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_BINUTILS_2_39_or_later=y
|
||||
CT_BINUTILS_2_39_or_older=y
|
||||
CT_BINUTILS_later_than_2_30=y
|
||||
CT_BINUTILS_2_30_or_later=y
|
||||
CT_BINUTILS_later_than_2_27=y
|
||||
CT_BINUTILS_2_27_or_later=y
|
||||
CT_BINUTILS_later_than_2_26=y
|
||||
CT_BINUTILS_2_26_or_later=y
|
||||
|
||||
#
|
||||
# GNU binutils
|
||||
#
|
||||
CT_BINUTILS_GOLD_SUPPORTS_ARCH=y
|
||||
CT_BINUTILS_GOLD_SUPPORT=y
|
||||
CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y
|
||||
CT_BINUTILS_LINKER_LD=y
|
||||
# CT_BINUTILS_LINKER_LD_GOLD is not set
|
||||
CT_BINUTILS_LINKERS_LIST="ld"
|
||||
CT_BINUTILS_LINKER_DEFAULT="bfd"
|
||||
CT_BINUTILS_PLUGINS=y
|
||||
CT_BINUTILS_RELRO=m
|
||||
CT_BINUTILS_DETERMINISTIC_ARCHIVES=y
|
||||
CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
|
||||
# CT_BINUTILS_FOR_TARGET is not set
|
||||
CT_ALL_BINUTILS_CHOICES="BINUTILS"
|
||||
# end of Binary utilities
|
||||
|
||||
#
|
||||
# C-library
|
||||
#
|
||||
CT_LIBC_GLIBC=y
|
||||
# CT_LIBC_MUSL is not set
|
||||
# CT_LIBC_UCLIBC_NG is not set
|
||||
CT_LIBC="glibc"
|
||||
CT_LIBC_CHOICE_KSYM="GLIBC"
|
||||
CT_LIBC_GLIBC_SHOW=y
|
||||
|
||||
#
|
||||
# Options for glibc
|
||||
#
|
||||
CT_LIBC_GLIBC_PKG_KSYM="GLIBC"
|
||||
CT_GLIBC_DIR_NAME="glibc"
|
||||
CT_GLIBC_USE_GNU=y
|
||||
# CT_GLIBC_USE_ORACLE is not set
|
||||
CT_GLIBC_USE="GLIBC"
|
||||
CT_GLIBC_PKG_NAME="glibc"
|
||||
CT_GLIBC_SRC_RELEASE=y
|
||||
# CT_GLIBC_SRC_DEVEL is not set
|
||||
# CT_GLIBC_SRC_CUSTOM is not set
|
||||
CT_GLIBC_PATCH_GLOBAL=y
|
||||
# CT_GLIBC_PATCH_BUNDLED is not set
|
||||
# CT_GLIBC_PATCH_LOCAL is not set
|
||||
# CT_GLIBC_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GLIBC_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GLIBC_PATCH_NONE is not set
|
||||
CT_GLIBC_PATCH_ORDER="global"
|
||||
# CT_GLIBC_V_2_36 is not set
|
||||
# CT_GLIBC_V_2_35 is not set
|
||||
# CT_GLIBC_V_2_34 is not set
|
||||
# CT_GLIBC_V_2_33 is not set
|
||||
# CT_GLIBC_V_2_32 is not set
|
||||
# CT_GLIBC_V_2_31 is not set
|
||||
# CT_GLIBC_V_2_30 is not set
|
||||
# CT_GLIBC_V_2_29 is not set
|
||||
# CT_GLIBC_V_2_28 is not set
|
||||
CT_GLIBC_V_2_27=y
|
||||
# CT_GLIBC_V_2_26 is not set
|
||||
# CT_GLIBC_V_2_25 is not set
|
||||
# CT_GLIBC_V_2_24 is not set
|
||||
# CT_GLIBC_V_2_23 is not set
|
||||
# CT_GLIBC_V_2_19 is not set
|
||||
# CT_GLIBC_V_2_17 is not set
|
||||
CT_GLIBC_VERSION="2.27"
|
||||
CT_GLIBC_MIRRORS="$(CT_Mirrors GNU glibc)"
|
||||
CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_GLIBC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GLIBC_2_36_or_older=y
|
||||
CT_GLIBC_older_than_2_36=y
|
||||
CT_GLIBC_2_34_or_older=y
|
||||
CT_GLIBC_older_than_2_34=y
|
||||
CT_GLIBC_2_32_or_older=y
|
||||
CT_GLIBC_older_than_2_32=y
|
||||
CT_GLIBC_2_31_or_older=y
|
||||
CT_GLIBC_older_than_2_31=y
|
||||
CT_GLIBC_2_30_or_older=y
|
||||
CT_GLIBC_older_than_2_30=y
|
||||
CT_GLIBC_2_29_or_older=y
|
||||
CT_GLIBC_older_than_2_29=y
|
||||
CT_GLIBC_2_28_or_older=y
|
||||
CT_GLIBC_older_than_2_28=y
|
||||
CT_GLIBC_2_27_or_later=y
|
||||
CT_GLIBC_2_27_or_older=y
|
||||
CT_GLIBC_later_than_2_26=y
|
||||
CT_GLIBC_2_26_or_later=y
|
||||
CT_GLIBC_later_than_2_25=y
|
||||
CT_GLIBC_2_25_or_later=y
|
||||
CT_GLIBC_later_than_2_24=y
|
||||
CT_GLIBC_2_24_or_later=y
|
||||
CT_GLIBC_later_than_2_23=y
|
||||
CT_GLIBC_2_23_or_later=y
|
||||
CT_GLIBC_later_than_2_20=y
|
||||
CT_GLIBC_2_20_or_later=y
|
||||
CT_GLIBC_later_than_2_17=y
|
||||
CT_GLIBC_2_17_or_later=y
|
||||
CT_GLIBC_later_than_2_14=y
|
||||
CT_GLIBC_2_14_or_later=y
|
||||
CT_GLIBC_DEP_KERNEL_HEADERS_VERSION=y
|
||||
CT_GLIBC_DEP_BINUTILS=y
|
||||
CT_GLIBC_DEP_GCC=y
|
||||
CT_GLIBC_DEP_PYTHON=y
|
||||
CT_GLIBC_SPARC_ALLOW_V7=y
|
||||
CT_THREADS="nptl"
|
||||
CT_GLIBC_BUILD_SSP=y
|
||||
CT_GLIBC_HAS_LIBIDN_ADDON=y
|
||||
# CT_GLIBC_USE_LIBIDN_ADDON is not set
|
||||
CT_GLIBC_NO_SPARC_V8=y
|
||||
CT_GLIBC_HAS_OBSOLETE_RPC=y
|
||||
CT_GLIBC_EXTRA_CONFIG_ARRAY="--with-pic"
|
||||
CT_GLIBC_CONFIGPARMS=""
|
||||
# CT_GLIBC_ENABLE_DEBUG is not set
|
||||
CT_GLIBC_EXTRA_CFLAGS="-fPIC -DPIC"
|
||||
CT_GLIBC_ENABLE_OBSOLETE_RPC=y
|
||||
# CT_GLIBC_ENABLE_FORTIFIED_BUILD is not set
|
||||
# CT_GLIBC_DISABLE_VERSIONING is not set
|
||||
CT_GLIBC_OLDEST_ABI=""
|
||||
CT_GLIBC_FORCE_UNWIND=y
|
||||
# CT_GLIBC_LOCALES is not set
|
||||
# CT_GLIBC_KERNEL_VERSION_NONE is not set
|
||||
CT_GLIBC_KERNEL_VERSION_AS_HEADERS=y
|
||||
# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set
|
||||
CT_GLIBC_MIN_KERNEL="4.15.18"
|
||||
CT_GLIBC_SSP_DEFAULT=y
|
||||
# CT_GLIBC_SSP_NO is not set
|
||||
# CT_GLIBC_SSP_YES is not set
|
||||
# CT_GLIBC_SSP_ALL is not set
|
||||
# CT_GLIBC_SSP_STRONG is not set
|
||||
CT_GLIBC_ENABLE_COMMON_FLAG=y
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG"
|
||||
CT_LIBC_SUPPORT_THREADS_ANY=y
|
||||
CT_LIBC_SUPPORT_THREADS_NATIVE=y
|
||||
|
||||
#
|
||||
# Common C library options
|
||||
#
|
||||
CT_THREADS_NATIVE=y
|
||||
# CT_CREATE_LDSO_CONF is not set
|
||||
CT_LIBC_XLDD=y
|
||||
# end of C-library
|
||||
|
||||
#
|
||||
# C compiler
|
||||
#
|
||||
CT_CC_CORE_NEEDED=y
|
||||
CT_CC_SUPPORT_CXX=y
|
||||
CT_CC_SUPPORT_FORTRAN=y
|
||||
CT_CC_SUPPORT_ADA=y
|
||||
CT_CC_SUPPORT_D=y
|
||||
CT_CC_SUPPORT_OBJC=y
|
||||
CT_CC_SUPPORT_OBJCXX=y
|
||||
CT_CC_SUPPORT_GOLANG=y
|
||||
CT_CC_GCC=y
|
||||
CT_CC="gcc"
|
||||
CT_CC_CHOICE_KSYM="GCC"
|
||||
CT_CC_GCC_SHOW=y
|
||||
|
||||
#
|
||||
# Options for gcc
|
||||
#
|
||||
CT_CC_GCC_PKG_KSYM="GCC"
|
||||
CT_GCC_DIR_NAME="gcc"
|
||||
CT_GCC_USE_GNU=y
|
||||
# CT_GCC_USE_LINARO is not set
|
||||
# CT_GCC_USE_ORACLE is not set
|
||||
CT_GCC_USE="GCC"
|
||||
CT_GCC_PKG_NAME="gcc"
|
||||
CT_GCC_SRC_RELEASE=y
|
||||
# CT_GCC_SRC_DEVEL is not set
|
||||
# CT_GCC_SRC_CUSTOM is not set
|
||||
CT_GCC_PATCH_GLOBAL=y
|
||||
# CT_GCC_PATCH_BUNDLED is not set
|
||||
# CT_GCC_PATCH_LOCAL is not set
|
||||
# CT_GCC_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GCC_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GCC_PATCH_NONE is not set
|
||||
CT_GCC_PATCH_ORDER="global"
|
||||
CT_GCC_V_12=y
|
||||
# CT_GCC_V_11 is not set
|
||||
# CT_GCC_V_10 is not set
|
||||
# CT_GCC_V_9 is not set
|
||||
# CT_GCC_V_8 is not set
|
||||
# CT_GCC_V_7 is not set
|
||||
# CT_GCC_V_6 is not set
|
||||
# CT_GCC_V_5 is not set
|
||||
# CT_GCC_V_4_9 is not set
|
||||
CT_GCC_VERSION="12.2.0"
|
||||
CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})"
|
||||
CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GCC_SIGNATURE_FORMAT=""
|
||||
CT_GCC_later_than_12=y
|
||||
CT_GCC_12_or_later=y
|
||||
CT_GCC_later_than_11=y
|
||||
CT_GCC_11_or_later=y
|
||||
CT_GCC_later_than_10=y
|
||||
CT_GCC_10_or_later=y
|
||||
CT_GCC_later_than_9=y
|
||||
CT_GCC_9_or_later=y
|
||||
CT_GCC_later_than_8=y
|
||||
CT_GCC_8_or_later=y
|
||||
CT_GCC_later_than_7=y
|
||||
CT_GCC_7_or_later=y
|
||||
CT_GCC_later_than_6=y
|
||||
CT_GCC_6_or_later=y
|
||||
CT_GCC_later_than_5=y
|
||||
CT_GCC_5_or_later=y
|
||||
CT_GCC_later_than_4_9=y
|
||||
CT_GCC_4_9_or_later=y
|
||||
CT_GCC_REQUIRE_4_9_or_later=y
|
||||
CT_CC_GCC_ENABLE_PLUGINS=y
|
||||
CT_CC_GCC_HAS_LIBMPX=y
|
||||
CT_CC_GCC_ENABLE_CXX_FLAGS=""
|
||||
CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY="--enable-host-shared --enable-default-ssp"
|
||||
CT_CC_GCC_EXTRA_CONFIG_ARRAY="--enable-host-shared --enable-default-ssp --with-build-config=bootstrap-lto-lean --enable-link-serialization=2"
|
||||
# CT_CC_GCC_STATIC_LIBSTDCXX is not set
|
||||
# CT_CC_GCC_SYSTEM_ZLIB is not set
|
||||
CT_CC_GCC_CONFIG_TLS=m
|
||||
|
||||
#
|
||||
# Optimisation features
|
||||
#
|
||||
CT_CC_GCC_USE_GRAPHITE=y
|
||||
CT_CC_GCC_USE_LTO=y
|
||||
CT_CC_GCC_LTO_ZSTD=m
|
||||
|
||||
#
|
||||
# Settings for libraries running on target
|
||||
#
|
||||
CT_CC_GCC_ENABLE_DEFAULT_PIE=y
|
||||
# CT_CC_GCC_ENABLE_TARGET_OPTSPACE is not set
|
||||
# CT_CC_GCC_LIBMUDFLAP is not set
|
||||
CT_CC_GCC_LIBGOMP=y
|
||||
CT_CC_GCC_LIBSSP=m
|
||||
# CT_CC_GCC_LIBQUADMATH is not set
|
||||
# CT_CC_GCC_LIBSANITIZER is not set
|
||||
# CT_CC_GCC_LIBSTDCXX_VERBOSE is not set
|
||||
|
||||
#
|
||||
# Misc. obscure options.
|
||||
#
|
||||
CT_CC_CXA_ATEXIT=y
|
||||
CT_CC_GCC_TM_CLONE_REGISTRY=m
|
||||
# CT_CC_GCC_DISABLE_PCH is not set
|
||||
CT_CC_GCC_SJLJ_EXCEPTIONS=m
|
||||
CT_CC_GCC_LDBL_128=m
|
||||
# CT_CC_GCC_BUILD_ID is not set
|
||||
CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set
|
||||
CT_CC_GCC_LNK_HASH_STYLE=""
|
||||
CT_CC_GCC_DEC_FLOATS_AUTO=y
|
||||
# CT_CC_GCC_DEC_FLOATS_BID is not set
|
||||
# CT_CC_GCC_DEC_FLOATS_DPD is not set
|
||||
# CT_CC_GCC_DEC_FLOATS_NO is not set
|
||||
CT_CC_GCC_DEC_FLOATS=""
|
||||
CT_ALL_CC_CHOICES="GCC"
|
||||
|
||||
#
|
||||
# Additional supported languages:
|
||||
#
|
||||
CT_CC_LANG_CXX=y
|
||||
# CT_CC_LANG_FORTRAN is not set
|
||||
# CT_CC_LANG_ADA is not set
|
||||
# CT_CC_LANG_D is not set
|
||||
# CT_CC_LANG_OBJC is not set
|
||||
# CT_CC_LANG_OBJCXX is not set
|
||||
# CT_CC_LANG_GOLANG is not set
|
||||
CT_CC_LANG_OTHERS=""
|
||||
# end of C compiler
|
||||
|
||||
#
|
||||
# Debug facilities
|
||||
#
|
||||
# CT_DEBUG_DUMA is not set
|
||||
# CT_DEBUG_GDB is not set
|
||||
# CT_DEBUG_LTRACE is not set
|
||||
# CT_DEBUG_STRACE is not set
|
||||
CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE"
|
||||
# end of Debug facilities
|
||||
|
||||
#
|
||||
# Companion libraries
|
||||
#
|
||||
# CT_COMPLIBS_CHECK is not set
|
||||
# CT_COMP_LIBS_CLOOG is not set
|
||||
# CT_COMP_LIBS_EXPAT is not set
|
||||
CT_COMP_LIBS_GETTEXT=y
|
||||
CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT"
|
||||
CT_GETTEXT_DIR_NAME="gettext"
|
||||
CT_GETTEXT_PKG_NAME="gettext"
|
||||
CT_GETTEXT_SRC_RELEASE=y
|
||||
# CT_GETTEXT_SRC_DEVEL is not set
|
||||
# CT_GETTEXT_SRC_CUSTOM is not set
|
||||
CT_GETTEXT_PATCH_GLOBAL=y
|
||||
# CT_GETTEXT_PATCH_BUNDLED is not set
|
||||
# CT_GETTEXT_PATCH_LOCAL is not set
|
||||
# CT_GETTEXT_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GETTEXT_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GETTEXT_PATCH_NONE is not set
|
||||
CT_GETTEXT_PATCH_ORDER="global"
|
||||
CT_GETTEXT_V_0_21=y
|
||||
# CT_GETTEXT_V_0_20_1 is not set
|
||||
# CT_GETTEXT_V_0_19_8_1 is not set
|
||||
CT_GETTEXT_VERSION="0.21"
|
||||
CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)"
|
||||
CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GETTEXT_0_21_or_later=y
|
||||
CT_GETTEXT_0_21_or_older=y
|
||||
CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y
|
||||
|
||||
#
|
||||
# This version of gettext is not compatible with uClibc-NG. Select
|
||||
#
|
||||
|
||||
#
|
||||
# a different version if uClibc-NG is used on the target or (in a
|
||||
#
|
||||
|
||||
#
|
||||
# Canadian cross build) on the host.
|
||||
#
|
||||
CT_COMP_LIBS_GMP=y
|
||||
CT_COMP_LIBS_GMP_PKG_KSYM="GMP"
|
||||
CT_GMP_DIR_NAME="gmp"
|
||||
CT_GMP_PKG_NAME="gmp"
|
||||
CT_GMP_SRC_RELEASE=y
|
||||
# CT_GMP_SRC_DEVEL is not set
|
||||
# CT_GMP_SRC_CUSTOM is not set
|
||||
CT_GMP_PATCH_GLOBAL=y
|
||||
# CT_GMP_PATCH_BUNDLED is not set
|
||||
# CT_GMP_PATCH_LOCAL is not set
|
||||
# CT_GMP_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GMP_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GMP_PATCH_NONE is not set
|
||||
CT_GMP_PATCH_ORDER="global"
|
||||
CT_GMP_V_6_2=y
|
||||
# CT_GMP_V_6_1 is not set
|
||||
CT_GMP_VERSION="6.2.1"
|
||||
CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)"
|
||||
CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2"
|
||||
CT_GMP_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_COMP_LIBS_ISL=y
|
||||
CT_COMP_LIBS_ISL_PKG_KSYM="ISL"
|
||||
CT_ISL_DIR_NAME="isl"
|
||||
CT_ISL_PKG_NAME="isl"
|
||||
CT_ISL_SRC_RELEASE=y
|
||||
# CT_ISL_SRC_DEVEL is not set
|
||||
# CT_ISL_SRC_CUSTOM is not set
|
||||
CT_ISL_PATCH_GLOBAL=y
|
||||
# CT_ISL_PATCH_BUNDLED is not set
|
||||
# CT_ISL_PATCH_LOCAL is not set
|
||||
# CT_ISL_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_ISL_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_ISL_PATCH_NONE is not set
|
||||
CT_ISL_PATCH_ORDER="global"
|
||||
CT_ISL_V_0_24=y
|
||||
# CT_ISL_V_0_23 is not set
|
||||
# CT_ISL_V_0_22 is not set
|
||||
# CT_ISL_V_0_21 is not set
|
||||
# CT_ISL_V_0_20 is not set
|
||||
# CT_ISL_V_0_19 is not set
|
||||
# CT_ISL_V_0_18 is not set
|
||||
# CT_ISL_V_0_17 is not set
|
||||
# CT_ISL_V_0_16 is not set
|
||||
# CT_ISL_V_0_15 is not set
|
||||
# CT_ISL_V_0_11 is not set
|
||||
CT_ISL_VERSION="0.24"
|
||||
CT_ISL_MIRRORS="https://libisl.sourceforge.io"
|
||||
CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_ISL_SIGNATURE_FORMAT=""
|
||||
CT_ISL_later_than_0_18=y
|
||||
CT_ISL_0_18_or_later=y
|
||||
CT_ISL_later_than_0_15=y
|
||||
CT_ISL_0_15_or_later=y
|
||||
# CT_COMP_LIBS_LIBELF is not set
|
||||
CT_COMP_LIBS_LIBICONV=y
|
||||
CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV"
|
||||
CT_LIBICONV_DIR_NAME="libiconv"
|
||||
CT_LIBICONV_PKG_NAME="libiconv"
|
||||
CT_LIBICONV_SRC_RELEASE=y
|
||||
# CT_LIBICONV_SRC_DEVEL is not set
|
||||
# CT_LIBICONV_SRC_CUSTOM is not set
|
||||
CT_LIBICONV_PATCH_GLOBAL=y
|
||||
# CT_LIBICONV_PATCH_BUNDLED is not set
|
||||
# CT_LIBICONV_PATCH_LOCAL is not set
|
||||
# CT_LIBICONV_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_LIBICONV_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_LIBICONV_PATCH_NONE is not set
|
||||
CT_LIBICONV_PATCH_ORDER="global"
|
||||
CT_LIBICONV_V_1_16=y
|
||||
# CT_LIBICONV_V_1_15 is not set
|
||||
CT_LIBICONV_VERSION="1.16"
|
||||
CT_LIBICONV_MIRRORS="$(CT_Mirrors GNU libiconv)"
|
||||
CT_LIBICONV_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LIBICONV_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LIBICONV_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_LIBICONV_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_COMP_LIBS_MPC=y
|
||||
CT_COMP_LIBS_MPC_PKG_KSYM="MPC"
|
||||
CT_MPC_DIR_NAME="mpc"
|
||||
CT_MPC_PKG_NAME="mpc"
|
||||
CT_MPC_SRC_RELEASE=y
|
||||
# CT_MPC_SRC_DEVEL is not set
|
||||
# CT_MPC_SRC_CUSTOM is not set
|
||||
CT_MPC_PATCH_GLOBAL=y
|
||||
# CT_MPC_PATCH_BUNDLED is not set
|
||||
# CT_MPC_PATCH_LOCAL is not set
|
||||
# CT_MPC_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_MPC_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_MPC_PATCH_NONE is not set
|
||||
CT_MPC_PATCH_ORDER="global"
|
||||
CT_MPC_V_1_2=y
|
||||
# CT_MPC_V_1_1 is not set
|
||||
# CT_MPC_V_1_0 is not set
|
||||
CT_MPC_VERSION="1.2.1"
|
||||
CT_MPC_MIRRORS="http://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_MPC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_MPC_later_than_1_1_0=y
|
||||
CT_MPC_1_1_0_or_later=y
|
||||
CT_COMP_LIBS_MPFR=y
|
||||
CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR"
|
||||
CT_MPFR_DIR_NAME="mpfr"
|
||||
CT_MPFR_PKG_NAME="mpfr"
|
||||
CT_MPFR_SRC_RELEASE=y
|
||||
# CT_MPFR_SRC_DEVEL is not set
|
||||
# CT_MPFR_SRC_CUSTOM is not set
|
||||
CT_MPFR_PATCH_GLOBAL=y
|
||||
# CT_MPFR_PATCH_BUNDLED is not set
|
||||
# CT_MPFR_PATCH_LOCAL is not set
|
||||
# CT_MPFR_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_MPFR_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_MPFR_PATCH_NONE is not set
|
||||
CT_MPFR_PATCH_ORDER="global"
|
||||
CT_MPFR_V_4_1=y
|
||||
# CT_MPFR_V_4_0 is not set
|
||||
# CT_MPFR_V_3_1 is not set
|
||||
CT_MPFR_VERSION="4.1.0"
|
||||
CT_MPFR_MIRRORS="http://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip"
|
||||
CT_MPFR_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_MPFR_later_than_4_0_0=y
|
||||
CT_MPFR_4_0_0_or_later=y
|
||||
CT_COMP_LIBS_NCURSES=y
|
||||
CT_COMP_LIBS_NCURSES_PKG_KSYM="NCURSES"
|
||||
CT_NCURSES_DIR_NAME="ncurses"
|
||||
CT_NCURSES_PKG_NAME="ncurses"
|
||||
CT_NCURSES_SRC_RELEASE=y
|
||||
# CT_NCURSES_SRC_DEVEL is not set
|
||||
# CT_NCURSES_SRC_CUSTOM is not set
|
||||
CT_NCURSES_PATCH_GLOBAL=y
|
||||
# CT_NCURSES_PATCH_BUNDLED is not set
|
||||
# CT_NCURSES_PATCH_LOCAL is not set
|
||||
# CT_NCURSES_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_NCURSES_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_NCURSES_PATCH_NONE is not set
|
||||
CT_NCURSES_PATCH_ORDER="global"
|
||||
CT_NCURSES_V_6_2=y
|
||||
# CT_NCURSES_V_6_1 is not set
|
||||
# CT_NCURSES_V_6_0 is not set
|
||||
CT_NCURSES_VERSION="6.2"
|
||||
CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)"
|
||||
CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_NCURSES_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_NCURSES_SIGNATURE_FORMAT="packed/.sig"
|
||||
# CT_NCURSES_NEW_ABI is not set
|
||||
CT_NCURSES_HOST_CONFIG_ARGS=""
|
||||
CT_NCURSES_HOST_DISABLE_DB=y
|
||||
CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100"
|
||||
CT_NCURSES_TARGET_CONFIG_ARGS=""
|
||||
# CT_NCURSES_TARGET_DISABLE_DB is not set
|
||||
CT_NCURSES_TARGET_FALLBACKS=""
|
||||
CT_COMP_LIBS_ZLIB=y
|
||||
CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB"
|
||||
CT_ZLIB_DIR_NAME="zlib"
|
||||
CT_ZLIB_PKG_NAME="zlib"
|
||||
CT_ZLIB_SRC_RELEASE=y
|
||||
# CT_ZLIB_SRC_DEVEL is not set
|
||||
# CT_ZLIB_SRC_CUSTOM is not set
|
||||
CT_ZLIB_PATCH_GLOBAL=y
|
||||
# CT_ZLIB_PATCH_BUNDLED is not set
|
||||
# CT_ZLIB_PATCH_LOCAL is not set
|
||||
# CT_ZLIB_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_ZLIB_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_ZLIB_PATCH_NONE is not set
|
||||
CT_ZLIB_PATCH_ORDER="global"
|
||||
CT_ZLIB_V_1_2_13=y
|
||||
# CT_ZLIB_V_1_2_12 is not set
|
||||
CT_ZLIB_VERSION="1.2.13"
|
||||
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
|
||||
CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_ZLIB_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB"
|
||||
CT_LIBICONV_NEEDED=y
|
||||
CT_GETTEXT_NEEDED=y
|
||||
CT_GMP_NEEDED=y
|
||||
CT_MPFR_NEEDED=y
|
||||
CT_ISL_NEEDED=y
|
||||
CT_MPC_NEEDED=y
|
||||
CT_NCURSES_NEEDED=y
|
||||
CT_ZLIB_NEEDED=y
|
||||
CT_LIBICONV=y
|
||||
CT_GETTEXT=y
|
||||
CT_GMP=y
|
||||
CT_MPFR=y
|
||||
CT_ISL=y
|
||||
CT_MPC=y
|
||||
CT_NCURSES=y
|
||||
CT_ZLIB=y
|
||||
# end of Companion libraries
|
||||
|
||||
#
|
||||
# Companion tools
|
||||
#
|
||||
# CT_COMP_TOOLS_FOR_HOST is not set
|
||||
# CT_COMP_TOOLS_AUTOCONF is not set
|
||||
# CT_COMP_TOOLS_AUTOMAKE is not set
|
||||
# CT_COMP_TOOLS_BISON is not set
|
||||
# CT_COMP_TOOLS_DTC is not set
|
||||
# CT_COMP_TOOLS_LIBTOOL is not set
|
||||
# CT_COMP_TOOLS_M4 is not set
|
||||
# CT_COMP_TOOLS_MAKE is not set
|
||||
CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE"
|
||||
# end of Companion tools
|
||||
|
||||
#
|
||||
# Test suite
|
||||
#
|
||||
# CT_TEST_SUITE_GCC is not set
|
||||
# end of Test suite
|
||||
Executable
+17
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
if [[ $# != 2 ]]; then
|
||||
echo "Invalid arguments"
|
||||
exit 1
|
||||
fi
|
||||
IN="$1"
|
||||
OUT="$2"
|
||||
|
||||
TMPDIR="$(mktemp -d)"
|
||||
trap "rm -rf '$TMPDIR'" EXIT
|
||||
cd "$TMPDIR"
|
||||
|
||||
set -x
|
||||
python3 /opt/implib/implib-gen.py --target aarch64-linux-gnu --dlopen --lazy-load --verbose "$IN"
|
||||
${FFBUILD_CROSS_PREFIX}gcc $CFLAGS $STAGE_CFLAGS -DIMPLIB_HIDDEN_SHIMS -c *.tramp.S *.init.c
|
||||
${FFBUILD_CROSS_PREFIX}ar -rcs "$OUT" *.tramp.o *.init.o
|
||||
@@ -0,0 +1,16 @@
|
||||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(CMAKE_SYSTEM_PROCESSOR aarch64)
|
||||
|
||||
set(triple aarch64-ffbuild-linux-gnu)
|
||||
|
||||
set(CMAKE_C_COMPILER ${triple}-gcc)
|
||||
set(CMAKE_CXX_COMPILER ${triple}-g++)
|
||||
set(CMAKE_RANLIB ${triple}-gcc-ranlib)
|
||||
set(CMAKE_AR ${triple}-gcc-ar)
|
||||
|
||||
set(CMAKE_SYSROOT /opt/ct-ng/${triple}/sysroot)
|
||||
set(CMAKE_FIND_ROOT_PATH /opt/ct-ng /opt/ct-ng/${triple}/sysroot /opt/ffbuild)
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
@@ -0,0 +1,47 @@
|
||||
ARG GH_REPO=ghcr.io/jellyfin/jellyfin-ffmpeg
|
||||
FROM $GH_REPO/base:latest
|
||||
|
||||
RUN --mount=src=ct-ng-config,dst=/.config \
|
||||
git clone --filter=blob:none https://github.com/crosstool-ng/crosstool-ng.git /ct-ng && cd /ct-ng && \
|
||||
./bootstrap && \
|
||||
./configure --enable-local && \
|
||||
make -j$(nproc) && \
|
||||
cp /.config .config && \
|
||||
./ct-ng build && \
|
||||
cd / && \
|
||||
rm -rf ct-ng
|
||||
|
||||
# Prepare "cross" environment to heavily favour static builds
|
||||
RUN \
|
||||
find /opt/ct-ng \
|
||||
-name "*.dll" \
|
||||
-or -name "*.dll.a" \
|
||||
-delete && \
|
||||
mkdir /opt/ffbuild
|
||||
|
||||
RUN rustup target add x86_64-pc-windows-gnu
|
||||
|
||||
ADD toolchain.cmake /toolchain.cmake
|
||||
ADD cross.meson /cross.meson
|
||||
|
||||
ENV FFBUILD_TOOLCHAIN=x86_64-w64-mingw32
|
||||
ENV PATH="/opt/ct-ng/bin:${PATH}" \
|
||||
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --pkg-config-flags=--static --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=x86_64 --target-os=mingw32" \
|
||||
FFBUILD_CROSS_PREFIX=${FFBUILD_TOOLCHAIN}- \
|
||||
FFBUILD_RUST_TARGET=x86_64-pc-windows-gnu \
|
||||
FFBUILD_PREFIX=/opt/ffbuild \
|
||||
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
|
||||
PKG_CONFIG=pkg-config \
|
||||
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \
|
||||
CC="${FFBUILD_TOOLCHAIN}-gcc" \
|
||||
CXX="${FFBUILD_TOOLCHAIN}-g++" \
|
||||
LD="${FFBUILD_TOOLCHAIN}-ld" \
|
||||
AR="${FFBUILD_TOOLCHAIN}-gcc-ar" \
|
||||
RANLIB="${FFBUILD_TOOLCHAIN}-gcc-ranlib" \
|
||||
NM="${FFBUILD_TOOLCHAIN}-gcc-nm" \
|
||||
DLLTOOL="${FFBUILD_TOOLCHAIN}-dlltool" \
|
||||
CFLAGS="-static-libgcc -static-libstdc++ -I/opt/ffbuild/include -O2 -pipe -D_FORTIFY_SOURCE=2 -fstack-protector-strong" \
|
||||
CXXFLAGS="-static-libgcc -static-libstdc++ -I/opt/ffbuild/include -O2 -pipe -D_FORTIFY_SOURCE=2 -fstack-protector-strong" \
|
||||
LDFLAGS="-static-libgcc -static-libstdc++ -L/opt/ffbuild/lib -O2 -pipe -fstack-protector-strong" \
|
||||
STAGE_CFLAGS="-fno-semantic-interposition" \
|
||||
STAGE_CXXFLAGS="-fno-semantic-interposition"
|
||||
@@ -0,0 +1,17 @@
|
||||
[binaries]
|
||||
c = 'x86_64-w64-mingw32-gcc'
|
||||
cpp = 'x86_64-w64-mingw32-g++'
|
||||
ar = 'x86_64-w64-mingw32-gcc-ar'
|
||||
ranlib = 'x86_64-w64-mingw32-gcc-ranlib'
|
||||
strip = 'x86_64-w64-mingw32-strip'
|
||||
windres = 'x86_64-w64-mingw32-windres'
|
||||
exe_wrapper = ['wine']
|
||||
|
||||
[properties]
|
||||
needs_exe_wrapper = true
|
||||
|
||||
[host_machine]
|
||||
system = 'windows'
|
||||
cpu_family = 'x86_64'
|
||||
cpu = 'x86_64'
|
||||
endian = 'little'
|
||||
@@ -0,0 +1,745 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# crosstool-NG 1.25.0.90_cf9beb1 Configuration
|
||||
#
|
||||
CT_CONFIGURE_has_static_link=y
|
||||
CT_CONFIGURE_has_cxx11=y
|
||||
CT_CONFIGURE_has_wget=y
|
||||
CT_CONFIGURE_has_curl=y
|
||||
CT_CONFIGURE_has_meson=y
|
||||
CT_CONFIGURE_has_ninja=y
|
||||
CT_CONFIGURE_has_rsync=y
|
||||
CT_CONFIGURE_has_make_3_81_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_0_or_newer=y
|
||||
CT_CONFIGURE_has_libtool_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtoolize_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_autoconf_2_65_or_newer=y
|
||||
CT_CONFIGURE_has_autoreconf_2_65_or_newer=y
|
||||
CT_CONFIGURE_has_automake_1_15_or_newer=y
|
||||
CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y
|
||||
CT_CONFIGURE_has_python_3_4_or_newer=y
|
||||
CT_CONFIGURE_has_bison_2_7_or_newer=y
|
||||
CT_CONFIGURE_has_bison_3_0_4_or_newer=y
|
||||
CT_CONFIGURE_has_python=y
|
||||
CT_CONFIGURE_has_svn=y
|
||||
CT_CONFIGURE_has_git=y
|
||||
CT_CONFIGURE_has_md5sum=y
|
||||
CT_CONFIGURE_has_sha1sum=y
|
||||
CT_CONFIGURE_has_sha256sum=y
|
||||
CT_CONFIGURE_has_sha512sum=y
|
||||
CT_CONFIGURE_has_install_with_strip_program=y
|
||||
CT_VERSION="1.25.0.90_cf9beb1"
|
||||
CT_VCHECK=""
|
||||
CT_CONFIG_VERSION_ENV="4"
|
||||
CT_CONFIG_VERSION_CURRENT="4"
|
||||
CT_CONFIG_VERSION="4"
|
||||
CT_MODULES=y
|
||||
|
||||
#
|
||||
# Paths and misc options
|
||||
#
|
||||
|
||||
#
|
||||
# crosstool-NG behavior
|
||||
#
|
||||
# CT_OBSOLETE is not set
|
||||
CT_EXPERIMENTAL=y
|
||||
CT_ALLOW_BUILD_AS_ROOT=y
|
||||
CT_ALLOW_BUILD_AS_ROOT_SURE=y
|
||||
# CT_DEBUG_CT is not set
|
||||
|
||||
#
|
||||
# Paths
|
||||
#
|
||||
CT_LOCAL_TARBALLS_DIR="${HOME}/src"
|
||||
# CT_SAVE_TARBALLS is not set
|
||||
# CT_TARBALLS_BUILDROOT_LAYOUT is not set
|
||||
CT_WORK_DIR="${CT_TOP_DIR}/build"
|
||||
CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}"
|
||||
CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build"
|
||||
CT_PREFIX_DIR="/opt/ct-ng"
|
||||
CT_RM_RF_PREFIX_DIR=y
|
||||
CT_REMOVE_DOCS=y
|
||||
# CT_INSTALL_LICENSES is not set
|
||||
# CT_PREFIX_DIR_RO is not set
|
||||
CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y
|
||||
CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES=y
|
||||
|
||||
#
|
||||
# Downloading
|
||||
#
|
||||
CT_DOWNLOAD_AGENT_WGET=y
|
||||
# CT_DOWNLOAD_AGENT_CURL is not set
|
||||
# CT_DOWNLOAD_AGENT_NONE is not set
|
||||
# CT_FORBID_DOWNLOAD is not set
|
||||
# CT_FORCE_DOWNLOAD is not set
|
||||
CT_CONNECT_TIMEOUT=10
|
||||
CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=3 -nc --progress=dot:binary"
|
||||
# CT_ONLY_DOWNLOAD is not set
|
||||
# CT_USE_MIRROR is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST=y
|
||||
CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512"
|
||||
# CT_VERIFY_DOWNLOAD_SIGNATURE is not set
|
||||
|
||||
#
|
||||
# Extracting
|
||||
#
|
||||
# CT_FORCE_EXTRACT is not set
|
||||
CT_OVERRIDE_CONFIG_GUESS_SUB=y
|
||||
# CT_ONLY_EXTRACT is not set
|
||||
CT_PATCH_BUNDLED=y
|
||||
# CT_PATCH_LOCAL is not set
|
||||
# CT_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_PATCH_NONE is not set
|
||||
CT_PATCH_ORDER="bundled"
|
||||
|
||||
#
|
||||
# Build behavior
|
||||
#
|
||||
CT_PARALLEL_JOBS=0
|
||||
CT_LOAD=""
|
||||
CT_USE_PIPES=y
|
||||
CT_EXTRA_CFLAGS_FOR_BUILD=""
|
||||
CT_EXTRA_CXXFLAGS_FOR_BUILD=""
|
||||
CT_EXTRA_LDFLAGS_FOR_BUILD=""
|
||||
CT_EXTRA_CFLAGS_FOR_HOST=""
|
||||
CT_EXTRA_LDFLAGS_FOR_HOST=""
|
||||
# CT_CONFIG_SHELL_SH is not set
|
||||
# CT_CONFIG_SHELL_ASH is not set
|
||||
CT_CONFIG_SHELL_BASH=y
|
||||
# CT_CONFIG_SHELL_CUSTOM is not set
|
||||
CT_CONFIG_SHELL="${bash}"
|
||||
|
||||
#
|
||||
# Logging
|
||||
#
|
||||
# CT_LOG_ERROR is not set
|
||||
# CT_LOG_WARN is not set
|
||||
# CT_LOG_INFO is not set
|
||||
# CT_LOG_EXTRA is not set
|
||||
# CT_LOG_ALL is not set
|
||||
CT_LOG_DEBUG=y
|
||||
CT_LOG_LEVEL_MAX="DEBUG"
|
||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||
# CT_LOG_PROGRESS_BAR is not set
|
||||
# CT_LOG_TO_FILE is not set
|
||||
# end of Paths and misc options
|
||||
|
||||
#
|
||||
# Target options
|
||||
#
|
||||
# CT_ARCH_ALPHA is not set
|
||||
# CT_ARCH_ARC is not set
|
||||
# CT_ARCH_ARM is not set
|
||||
# CT_ARCH_AVR is not set
|
||||
# CT_ARCH_C6X is not set
|
||||
# CT_ARCH_LOONGARCH is not set
|
||||
# CT_ARCH_M68K is not set
|
||||
# CT_ARCH_MICROBLAZE is not set
|
||||
# CT_ARCH_MIPS is not set
|
||||
# CT_ARCH_MOXIE is not set
|
||||
# CT_ARCH_MSP430 is not set
|
||||
# CT_ARCH_NIOS2 is not set
|
||||
# CT_ARCH_POWERPC is not set
|
||||
# CT_ARCH_PRU is not set
|
||||
# CT_ARCH_RISCV is not set
|
||||
# CT_ARCH_S390 is not set
|
||||
# CT_ARCH_SH is not set
|
||||
# CT_ARCH_SPARC is not set
|
||||
CT_ARCH_X86=y
|
||||
# CT_ARCH_XTENSA is not set
|
||||
CT_ARCH="x86"
|
||||
CT_ARCH_CHOICE_KSYM="X86"
|
||||
CT_ARCH_CPU=""
|
||||
CT_ARCH_TUNE=""
|
||||
CT_ARCH_X86_SHOW=y
|
||||
|
||||
#
|
||||
# Options for x86
|
||||
#
|
||||
CT_ARCH_X86_PKG_KSYM=""
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR C6X LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ARCH_SUFFIX=""
|
||||
# CT_OMIT_TARGET_VENDOR is not set
|
||||
|
||||
#
|
||||
# Generic target options
|
||||
#
|
||||
# CT_MULTILIB is not set
|
||||
CT_DEMULTILIB=y
|
||||
CT_ARCH_USE_MMU=y
|
||||
CT_ARCH_SUPPORTS_LIBSANITIZER=y
|
||||
CT_ARCH_SUPPORTS_32=y
|
||||
CT_ARCH_SUPPORTS_64=y
|
||||
CT_ARCH_DEFAULT_32=y
|
||||
CT_ARCH_BITNESS=64
|
||||
# CT_ARCH_32 is not set
|
||||
CT_ARCH_64=y
|
||||
CT_ARCH_SUPPORTS_WITH_32_64=y
|
||||
|
||||
#
|
||||
# Target optimisations
|
||||
#
|
||||
CT_ARCH_SUPPORTS_WITH_ARCH=y
|
||||
CT_ARCH_SUPPORTS_WITH_CPU=y
|
||||
CT_ARCH_SUPPORTS_WITH_TUNE=y
|
||||
CT_ARCH_ARCH=""
|
||||
CT_TARGET_CFLAGS=""
|
||||
CT_TARGET_LDFLAGS=""
|
||||
# end of Target options
|
||||
|
||||
#
|
||||
# Toolchain options
|
||||
#
|
||||
|
||||
#
|
||||
# General toolchain options
|
||||
#
|
||||
CT_FORCE_SYSROOT=y
|
||||
CT_USE_SYSROOT=y
|
||||
CT_SYSROOT_NAME="sysroot"
|
||||
CT_SYSROOT_DIR_PREFIX=""
|
||||
CT_WANTS_STATIC_LINK=y
|
||||
CT_WANTS_STATIC_LINK_CXX=y
|
||||
# CT_STATIC_TOOLCHAIN is not set
|
||||
CT_SHOW_CT_VERSION=y
|
||||
CT_TOOLCHAIN_PKGVERSION=""
|
||||
CT_TOOLCHAIN_BUGURL=""
|
||||
|
||||
#
|
||||
# Tuple completion and aliasing
|
||||
#
|
||||
CT_TARGET_VENDOR="w64"
|
||||
CT_TARGET_ALIAS_SED_EXPR=""
|
||||
CT_TARGET_ALIAS=""
|
||||
|
||||
#
|
||||
# Toolchain type
|
||||
#
|
||||
# CT_NATIVE is not set
|
||||
CT_CROSS=y
|
||||
# CT_CROSS_NATIVE is not set
|
||||
# CT_CANADIAN is not set
|
||||
CT_TOOLCHAIN_TYPE="cross"
|
||||
|
||||
#
|
||||
# Build system
|
||||
#
|
||||
CT_BUILD=""
|
||||
CT_BUILD_PREFIX=""
|
||||
CT_BUILD_SUFFIX=""
|
||||
|
||||
#
|
||||
# Misc options
|
||||
#
|
||||
# CT_TOOLCHAIN_ENABLE_NLS is not set
|
||||
# end of Toolchain options
|
||||
|
||||
#
|
||||
# Operating System
|
||||
#
|
||||
CT_WINDOWS=y
|
||||
CT_KERNEL_SUPPORTS_SHARED_LIBS=y
|
||||
# CT_KERNEL_BARE_METAL is not set
|
||||
# CT_KERNEL_LINUX is not set
|
||||
CT_KERNEL_WINDOWS=y
|
||||
CT_KERNEL="windows"
|
||||
CT_KERNEL_CHOICE_KSYM="WINDOWS"
|
||||
CT_KERNEL_WINDOWS_SHOW=y
|
||||
|
||||
#
|
||||
# Options for windows
|
||||
#
|
||||
CT_KERNEL_WINDOWS_PKG_KSYM=""
|
||||
CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS"
|
||||
|
||||
#
|
||||
# Common kernel options
|
||||
#
|
||||
CT_SHARED_LIBS=y
|
||||
# end of Operating System
|
||||
|
||||
#
|
||||
# Binary utilities
|
||||
#
|
||||
CT_ARCH_BINFMT_ELF=y
|
||||
CT_BINUTILS_BINUTILS=y
|
||||
CT_BINUTILS="binutils"
|
||||
CT_BINUTILS_CHOICE_KSYM="BINUTILS"
|
||||
CT_BINUTILS_BINUTILS_SHOW=y
|
||||
|
||||
#
|
||||
# Options for binutils
|
||||
#
|
||||
CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS"
|
||||
CT_BINUTILS_DIR_NAME="binutils"
|
||||
CT_BINUTILS_USE_GNU=y
|
||||
# CT_BINUTILS_USE_LINARO is not set
|
||||
# CT_BINUTILS_USE_ORACLE is not set
|
||||
CT_BINUTILS_USE="BINUTILS"
|
||||
CT_BINUTILS_PKG_NAME="binutils"
|
||||
CT_BINUTILS_SRC_RELEASE=y
|
||||
# CT_BINUTILS_SRC_DEVEL is not set
|
||||
# CT_BINUTILS_SRC_CUSTOM is not set
|
||||
CT_BINUTILS_PATCH_GLOBAL=y
|
||||
# CT_BINUTILS_PATCH_BUNDLED is not set
|
||||
# CT_BINUTILS_PATCH_LOCAL is not set
|
||||
# CT_BINUTILS_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_BINUTILS_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_BINUTILS_PATCH_NONE is not set
|
||||
CT_BINUTILS_PATCH_ORDER="global"
|
||||
CT_BINUTILS_V_2_39=y
|
||||
# CT_BINUTILS_V_2_38 is not set
|
||||
# CT_BINUTILS_V_2_37 is not set
|
||||
# CT_BINUTILS_V_2_36 is not set
|
||||
# CT_BINUTILS_V_2_35 is not set
|
||||
# CT_BINUTILS_V_2_34 is not set
|
||||
# CT_BINUTILS_V_2_33 is not set
|
||||
# CT_BINUTILS_V_2_32 is not set
|
||||
# CT_BINUTILS_V_2_31 is not set
|
||||
# CT_BINUTILS_V_2_30 is not set
|
||||
# CT_BINUTILS_V_2_29 is not set
|
||||
# CT_BINUTILS_V_2_28 is not set
|
||||
# CT_BINUTILS_V_2_27 is not set
|
||||
# CT_BINUTILS_V_2_26 is not set
|
||||
CT_BINUTILS_VERSION="2.39"
|
||||
CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)"
|
||||
CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_BINUTILS_2_39_or_later=y
|
||||
CT_BINUTILS_2_39_or_older=y
|
||||
CT_BINUTILS_later_than_2_30=y
|
||||
CT_BINUTILS_2_30_or_later=y
|
||||
CT_BINUTILS_later_than_2_27=y
|
||||
CT_BINUTILS_2_27_or_later=y
|
||||
CT_BINUTILS_later_than_2_26=y
|
||||
CT_BINUTILS_2_26_or_later=y
|
||||
|
||||
#
|
||||
# GNU binutils
|
||||
#
|
||||
CT_BINUTILS_GOLD_SUPPORTS_ARCH=y
|
||||
CT_BINUTILS_GOLD_SUPPORT=y
|
||||
CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y
|
||||
CT_BINUTILS_LINKER_LD=y
|
||||
# CT_BINUTILS_LINKER_LD_GOLD is not set
|
||||
CT_BINUTILS_LINKERS_LIST="ld"
|
||||
CT_BINUTILS_LINKER_DEFAULT="bfd"
|
||||
CT_BINUTILS_PLUGINS=y
|
||||
CT_BINUTILS_RELRO=m
|
||||
CT_BINUTILS_DETERMINISTIC_ARCHIVES=y
|
||||
CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
|
||||
# CT_BINUTILS_FOR_TARGET is not set
|
||||
CT_ALL_BINUTILS_CHOICES="BINUTILS"
|
||||
# end of Binary utilities
|
||||
|
||||
#
|
||||
# C-library
|
||||
#
|
||||
CT_LIBC_MINGW_W64=y
|
||||
CT_LIBC="mingw-w64"
|
||||
CT_LIBC_CHOICE_KSYM="MINGW_W64"
|
||||
CT_THREADS="posix"
|
||||
CT_LIBC_MINGW_W64_SHOW=y
|
||||
|
||||
#
|
||||
# Options for mingw-w64
|
||||
#
|
||||
CT_LIBC_MINGW_W64_PKG_KSYM="MINGW_W64"
|
||||
CT_MINGW_W64_DIR_NAME="mingw-w64"
|
||||
CT_MINGW_W64_PKG_NAME="mingw-w64"
|
||||
CT_MINGW_W64_SRC_RELEASE=y
|
||||
# CT_MINGW_W64_SRC_DEVEL is not set
|
||||
# CT_MINGW_W64_SRC_CUSTOM is not set
|
||||
CT_MINGW_W64_PATCH_GLOBAL=y
|
||||
# CT_MINGW_W64_PATCH_BUNDLED is not set
|
||||
# CT_MINGW_W64_PATCH_LOCAL is not set
|
||||
# CT_MINGW_W64_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_MINGW_W64_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_MINGW_W64_PATCH_NONE is not set
|
||||
CT_MINGW_W64_PATCH_ORDER="global"
|
||||
CT_MINGW_W64_V_V9_0=y
|
||||
# CT_MINGW_W64_V_V8_0 is not set
|
||||
# CT_MINGW_W64_V_V7_0 is not set
|
||||
# CT_MINGW_W64_V_V6_0 is not set
|
||||
# CT_MINGW_W64_V_V5_0 is not set
|
||||
# CT_MINGW_W64_V_V4_0 is not set
|
||||
CT_MINGW_W64_VERSION="v9.0.0"
|
||||
CT_MINGW_W64_MIRRORS="http://downloads.sourceforge.net/sourceforge/mingw-w64 https://downloads.sourceforge.net/project/mingw-w64/mingw-w64/mingw-w64-release/"
|
||||
CT_MINGW_W64_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MINGW_W64_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MINGW_W64_ARCHIVE_FORMATS=".tar.bz2 .zip"
|
||||
CT_MINGW_W64_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_MINGW_SECURE_API=y
|
||||
CT_MINGW_DIRECTX=y
|
||||
CT_MINGW_DDK=y
|
||||
CT_MINGW_TOOLS=y
|
||||
CT_MINGW_TOOL_LIST_ARRAY="gendef genidl genlib genpeimg widl"
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG"
|
||||
CT_LIBC_SUPPORT_THREADS_ANY=y
|
||||
CT_LIBC_SUPPORT_THREADS_NATIVE=y
|
||||
CT_LIBC_SUPPORT_THREADS_POSIX=y
|
||||
|
||||
#
|
||||
# Common C library options
|
||||
#
|
||||
# CT_THREADS_NATIVE is not set
|
||||
CT_THREADS_POSIX=y
|
||||
# CT_CREATE_LDSO_CONF is not set
|
||||
CT_LIBC_XLDD=y
|
||||
# end of C-library
|
||||
|
||||
#
|
||||
# C compiler
|
||||
#
|
||||
CT_CC_CORE_NEEDED=y
|
||||
CT_CC_SUPPORT_CXX=y
|
||||
CT_CC_SUPPORT_FORTRAN=y
|
||||
CT_CC_SUPPORT_ADA=y
|
||||
CT_CC_SUPPORT_D=y
|
||||
CT_CC_SUPPORT_OBJC=y
|
||||
CT_CC_SUPPORT_OBJCXX=y
|
||||
CT_CC_SUPPORT_GOLANG=y
|
||||
CT_CC_GCC=y
|
||||
CT_CC="gcc"
|
||||
CT_CC_CHOICE_KSYM="GCC"
|
||||
CT_CC_GCC_SHOW=y
|
||||
|
||||
#
|
||||
# Options for gcc
|
||||
#
|
||||
CT_CC_GCC_PKG_KSYM="GCC"
|
||||
CT_GCC_DIR_NAME="gcc"
|
||||
CT_GCC_USE_GNU=y
|
||||
# CT_GCC_USE_LINARO is not set
|
||||
# CT_GCC_USE_ORACLE is not set
|
||||
CT_GCC_USE="GCC"
|
||||
CT_GCC_PKG_NAME="gcc"
|
||||
CT_GCC_SRC_RELEASE=y
|
||||
# CT_GCC_SRC_DEVEL is not set
|
||||
# CT_GCC_SRC_CUSTOM is not set
|
||||
CT_GCC_PATCH_GLOBAL=y
|
||||
# CT_GCC_PATCH_BUNDLED is not set
|
||||
# CT_GCC_PATCH_LOCAL is not set
|
||||
# CT_GCC_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GCC_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GCC_PATCH_NONE is not set
|
||||
CT_GCC_PATCH_ORDER="global"
|
||||
CT_GCC_V_12=y
|
||||
# CT_GCC_V_11 is not set
|
||||
# CT_GCC_V_10 is not set
|
||||
# CT_GCC_V_9 is not set
|
||||
# CT_GCC_V_8 is not set
|
||||
# CT_GCC_V_7 is not set
|
||||
# CT_GCC_V_6 is not set
|
||||
# CT_GCC_V_5 is not set
|
||||
# CT_GCC_V_4_9 is not set
|
||||
CT_GCC_VERSION="12.2.0"
|
||||
CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})"
|
||||
CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GCC_SIGNATURE_FORMAT=""
|
||||
CT_GCC_later_than_12=y
|
||||
CT_GCC_12_or_later=y
|
||||
CT_GCC_later_than_11=y
|
||||
CT_GCC_11_or_later=y
|
||||
CT_GCC_later_than_10=y
|
||||
CT_GCC_10_or_later=y
|
||||
CT_GCC_later_than_9=y
|
||||
CT_GCC_9_or_later=y
|
||||
CT_GCC_later_than_8=y
|
||||
CT_GCC_8_or_later=y
|
||||
CT_GCC_later_than_7=y
|
||||
CT_GCC_7_or_later=y
|
||||
CT_GCC_later_than_6=y
|
||||
CT_GCC_6_or_later=y
|
||||
CT_GCC_later_than_5=y
|
||||
CT_GCC_5_or_later=y
|
||||
CT_GCC_later_than_4_9=y
|
||||
CT_GCC_4_9_or_later=y
|
||||
CT_CC_GCC_ENABLE_PLUGINS=y
|
||||
CT_CC_GCC_HAS_LIBMPX=y
|
||||
CT_CC_GCC_ENABLE_CXX_FLAGS=""
|
||||
CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY="--enable-default-ssp"
|
||||
CT_CC_GCC_EXTRA_CONFIG_ARRAY="--enable-default-ssp --with-build-config=bootstrap-lto-lean --enable-link-serialization=2"
|
||||
CT_CC_GCC_STATIC_LIBSTDCXX=y
|
||||
CT_CC_GCC_SYSTEM_ZLIB=y
|
||||
CT_CC_GCC_CONFIG_TLS=m
|
||||
|
||||
#
|
||||
# Optimisation features
|
||||
#
|
||||
CT_CC_GCC_USE_GRAPHITE=y
|
||||
CT_CC_GCC_USE_LTO=y
|
||||
CT_CC_GCC_LTO_ZSTD=m
|
||||
|
||||
#
|
||||
# Settings for libraries running on target
|
||||
#
|
||||
# CT_CC_GCC_ENABLE_TARGET_OPTSPACE is not set
|
||||
# CT_CC_GCC_LIBMUDFLAP is not set
|
||||
CT_CC_GCC_LIBGOMP=y
|
||||
CT_CC_GCC_LIBSSP=m
|
||||
# CT_CC_GCC_LIBQUADMATH is not set
|
||||
# CT_CC_GCC_LIBSTDCXX_VERBOSE is not set
|
||||
|
||||
#
|
||||
# Misc. obscure options.
|
||||
#
|
||||
CT_CC_CXA_ATEXIT=y
|
||||
CT_CC_GCC_TM_CLONE_REGISTRY=m
|
||||
# CT_CC_GCC_DISABLE_PCH is not set
|
||||
CT_CC_GCC_SJLJ_EXCEPTIONS=m
|
||||
CT_CC_GCC_LDBL_128=m
|
||||
# CT_CC_GCC_BUILD_ID is not set
|
||||
CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set
|
||||
CT_CC_GCC_LNK_HASH_STYLE=""
|
||||
CT_CC_GCC_DEC_FLOATS_AUTO=y
|
||||
# CT_CC_GCC_DEC_FLOATS_BID is not set
|
||||
# CT_CC_GCC_DEC_FLOATS_DPD is not set
|
||||
# CT_CC_GCC_DEC_FLOATS_NO is not set
|
||||
CT_CC_GCC_DEC_FLOATS=""
|
||||
CT_ALL_CC_CHOICES="GCC"
|
||||
|
||||
#
|
||||
# Additional supported languages:
|
||||
#
|
||||
CT_CC_LANG_CXX=y
|
||||
# CT_CC_LANG_FORTRAN is not set
|
||||
# CT_CC_LANG_ADA is not set
|
||||
# CT_CC_LANG_D is not set
|
||||
# CT_CC_LANG_OBJC is not set
|
||||
# CT_CC_LANG_OBJCXX is not set
|
||||
# CT_CC_LANG_GOLANG is not set
|
||||
CT_CC_LANG_OTHERS=""
|
||||
# end of C compiler
|
||||
|
||||
#
|
||||
# Debug facilities
|
||||
#
|
||||
# CT_DEBUG_DUMA is not set
|
||||
# CT_DEBUG_GDB is not set
|
||||
# CT_DEBUG_LTRACE is not set
|
||||
# CT_DEBUG_STRACE is not set
|
||||
CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE"
|
||||
# end of Debug facilities
|
||||
|
||||
#
|
||||
# Companion libraries
|
||||
#
|
||||
# CT_COMPLIBS_CHECK is not set
|
||||
# CT_COMP_LIBS_CLOOG is not set
|
||||
# CT_COMP_LIBS_EXPAT is not set
|
||||
CT_COMP_LIBS_GETTEXT=y
|
||||
CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT"
|
||||
CT_GETTEXT_DIR_NAME="gettext"
|
||||
CT_GETTEXT_PKG_NAME="gettext"
|
||||
CT_GETTEXT_SRC_RELEASE=y
|
||||
# CT_GETTEXT_SRC_DEVEL is not set
|
||||
# CT_GETTEXT_SRC_CUSTOM is not set
|
||||
CT_GETTEXT_PATCH_GLOBAL=y
|
||||
# CT_GETTEXT_PATCH_BUNDLED is not set
|
||||
# CT_GETTEXT_PATCH_LOCAL is not set
|
||||
# CT_GETTEXT_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GETTEXT_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GETTEXT_PATCH_NONE is not set
|
||||
CT_GETTEXT_PATCH_ORDER="global"
|
||||
CT_GETTEXT_V_0_21=y
|
||||
# CT_GETTEXT_V_0_20_1 is not set
|
||||
# CT_GETTEXT_V_0_19_8_1 is not set
|
||||
CT_GETTEXT_VERSION="0.21"
|
||||
CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)"
|
||||
CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GETTEXT_0_21_or_later=y
|
||||
CT_GETTEXT_0_21_or_older=y
|
||||
CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y
|
||||
|
||||
#
|
||||
# This version of gettext is not compatible with uClibc-NG. Select
|
||||
#
|
||||
|
||||
#
|
||||
# a different version if uClibc-NG is used on the target or (in a
|
||||
#
|
||||
|
||||
#
|
||||
# Canadian cross build) on the host.
|
||||
#
|
||||
CT_COMP_LIBS_GMP=y
|
||||
CT_COMP_LIBS_GMP_PKG_KSYM="GMP"
|
||||
CT_GMP_DIR_NAME="gmp"
|
||||
CT_GMP_PKG_NAME="gmp"
|
||||
CT_GMP_SRC_RELEASE=y
|
||||
# CT_GMP_SRC_DEVEL is not set
|
||||
# CT_GMP_SRC_CUSTOM is not set
|
||||
CT_GMP_PATCH_GLOBAL=y
|
||||
# CT_GMP_PATCH_BUNDLED is not set
|
||||
# CT_GMP_PATCH_LOCAL is not set
|
||||
# CT_GMP_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_GMP_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_GMP_PATCH_NONE is not set
|
||||
CT_GMP_PATCH_ORDER="global"
|
||||
CT_GMP_V_6_2=y
|
||||
# CT_GMP_V_6_1 is not set
|
||||
CT_GMP_VERSION="6.2.1"
|
||||
CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)"
|
||||
CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2"
|
||||
CT_GMP_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_COMP_LIBS_ISL=y
|
||||
CT_COMP_LIBS_ISL_PKG_KSYM="ISL"
|
||||
CT_ISL_DIR_NAME="isl"
|
||||
CT_ISL_PKG_NAME="isl"
|
||||
CT_ISL_SRC_RELEASE=y
|
||||
# CT_ISL_SRC_DEVEL is not set
|
||||
# CT_ISL_SRC_CUSTOM is not set
|
||||
CT_ISL_PATCH_GLOBAL=y
|
||||
# CT_ISL_PATCH_BUNDLED is not set
|
||||
# CT_ISL_PATCH_LOCAL is not set
|
||||
# CT_ISL_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_ISL_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_ISL_PATCH_NONE is not set
|
||||
CT_ISL_PATCH_ORDER="global"
|
||||
CT_ISL_V_0_24=y
|
||||
# CT_ISL_V_0_23 is not set
|
||||
# CT_ISL_V_0_22 is not set
|
||||
# CT_ISL_V_0_21 is not set
|
||||
# CT_ISL_V_0_20 is not set
|
||||
# CT_ISL_V_0_19 is not set
|
||||
# CT_ISL_V_0_18 is not set
|
||||
# CT_ISL_V_0_17 is not set
|
||||
# CT_ISL_V_0_16 is not set
|
||||
# CT_ISL_V_0_15 is not set
|
||||
CT_ISL_VERSION="0.24"
|
||||
CT_ISL_MIRRORS="https://libisl.sourceforge.io"
|
||||
CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_ISL_SIGNATURE_FORMAT=""
|
||||
CT_ISL_later_than_0_18=y
|
||||
CT_ISL_0_18_or_later=y
|
||||
CT_ISL_later_than_0_15=y
|
||||
CT_ISL_0_15_or_later=y
|
||||
# CT_COMP_LIBS_LIBELF is not set
|
||||
# CT_COMP_LIBS_LIBICONV is not set
|
||||
CT_COMP_LIBS_MPC=y
|
||||
CT_COMP_LIBS_MPC_PKG_KSYM="MPC"
|
||||
CT_MPC_DIR_NAME="mpc"
|
||||
CT_MPC_PKG_NAME="mpc"
|
||||
CT_MPC_SRC_RELEASE=y
|
||||
# CT_MPC_SRC_DEVEL is not set
|
||||
# CT_MPC_SRC_CUSTOM is not set
|
||||
CT_MPC_PATCH_GLOBAL=y
|
||||
# CT_MPC_PATCH_BUNDLED is not set
|
||||
# CT_MPC_PATCH_LOCAL is not set
|
||||
# CT_MPC_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_MPC_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_MPC_PATCH_NONE is not set
|
||||
CT_MPC_PATCH_ORDER="global"
|
||||
CT_MPC_V_1_2=y
|
||||
# CT_MPC_V_1_1 is not set
|
||||
# CT_MPC_V_1_0 is not set
|
||||
CT_MPC_VERSION="1.2.1"
|
||||
CT_MPC_MIRRORS="http://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_MPC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_MPC_later_than_1_1_0=y
|
||||
CT_MPC_1_1_0_or_later=y
|
||||
CT_COMP_LIBS_MPFR=y
|
||||
CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR"
|
||||
CT_MPFR_DIR_NAME="mpfr"
|
||||
CT_MPFR_PKG_NAME="mpfr"
|
||||
CT_MPFR_SRC_RELEASE=y
|
||||
# CT_MPFR_SRC_DEVEL is not set
|
||||
# CT_MPFR_SRC_CUSTOM is not set
|
||||
CT_MPFR_PATCH_GLOBAL=y
|
||||
# CT_MPFR_PATCH_BUNDLED is not set
|
||||
# CT_MPFR_PATCH_LOCAL is not set
|
||||
# CT_MPFR_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_MPFR_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_MPFR_PATCH_NONE is not set
|
||||
CT_MPFR_PATCH_ORDER="global"
|
||||
CT_MPFR_V_4_1=y
|
||||
# CT_MPFR_V_4_0 is not set
|
||||
# CT_MPFR_V_3_1 is not set
|
||||
CT_MPFR_VERSION="4.1.0"
|
||||
CT_MPFR_MIRRORS="http://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip"
|
||||
CT_MPFR_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_MPFR_later_than_4_0_0=y
|
||||
CT_MPFR_4_0_0_or_later=y
|
||||
# CT_COMP_LIBS_NCURSES is not set
|
||||
CT_COMP_LIBS_ZLIB=y
|
||||
CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB"
|
||||
CT_ZLIB_DIR_NAME="zlib"
|
||||
CT_ZLIB_PKG_NAME="zlib"
|
||||
CT_ZLIB_SRC_RELEASE=y
|
||||
# CT_ZLIB_SRC_DEVEL is not set
|
||||
# CT_ZLIB_SRC_CUSTOM is not set
|
||||
CT_ZLIB_PATCH_GLOBAL=y
|
||||
# CT_ZLIB_PATCH_BUNDLED is not set
|
||||
# CT_ZLIB_PATCH_LOCAL is not set
|
||||
# CT_ZLIB_PATCH_BUNDLED_LOCAL is not set
|
||||
# CT_ZLIB_PATCH_LOCAL_BUNDLED is not set
|
||||
# CT_ZLIB_PATCH_NONE is not set
|
||||
CT_ZLIB_PATCH_ORDER="global"
|
||||
CT_ZLIB_V_1_2_13=y
|
||||
CT_ZLIB_VERSION="1.2.13"
|
||||
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
|
||||
CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_ZLIB_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB"
|
||||
# CT_LIBICONV_NEEDED is not set
|
||||
# CT_GETTEXT_NEEDED is not set
|
||||
CT_GMP_NEEDED=y
|
||||
CT_MPFR_NEEDED=y
|
||||
CT_ISL_NEEDED=y
|
||||
CT_MPC_NEEDED=y
|
||||
CT_ZLIB_NEEDED=y
|
||||
CT_GMP=y
|
||||
CT_MPFR=y
|
||||
CT_ISL=y
|
||||
CT_MPC=y
|
||||
CT_ZLIB=y
|
||||
# end of Companion libraries
|
||||
|
||||
#
|
||||
# Companion tools
|
||||
#
|
||||
# CT_COMP_TOOLS_FOR_HOST is not set
|
||||
# CT_COMP_TOOLS_AUTOCONF is not set
|
||||
# CT_COMP_TOOLS_AUTOMAKE is not set
|
||||
# CT_COMP_TOOLS_BISON is not set
|
||||
# CT_COMP_TOOLS_DTC is not set
|
||||
# CT_COMP_TOOLS_LIBTOOL is not set
|
||||
# CT_COMP_TOOLS_M4 is not set
|
||||
# CT_COMP_TOOLS_MAKE is not set
|
||||
CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE"
|
||||
# end of Companion tools
|
||||
|
||||
#
|
||||
# Test suite
|
||||
#
|
||||
# CT_TEST_SUITE_GCC is not set
|
||||
# end of Test suite
|
||||
@@ -0,0 +1,18 @@
|
||||
set(CMAKE_SYSTEM_NAME Windows)
|
||||
set(CMAKE_SYSTEM_PROCESSOR x86_64)
|
||||
|
||||
set(triple x86_64-w64-mingw32)
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32 /opt/ffbuild)
|
||||
set(CMAKE_C_COMPILER ${triple}-gcc)
|
||||
set(CMAKE_CXX_COMPILER ${triple}-g++)
|
||||
set(CMAKE_RC_COMPILER ${triple}-windres)
|
||||
set(CMAKE_RANLIB ${triple}-gcc-ranlib)
|
||||
set(CMAKE_AR ${triple}-gcc-ar)
|
||||
|
||||
set(CMAKE_SYSROOT /opt/ct-ng/${triple}/sysroot)
|
||||
set(CMAKE_FIND_ROOT_PATH /opt/ct-ng /opt/ct-ng/${triple}/sysroot /opt/ffbuild)
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
@@ -0,0 +1,25 @@
|
||||
FROM ubuntu:kinetic
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
RUN \
|
||||
apt-get -y update && \
|
||||
apt-get -y dist-upgrade && \
|
||||
apt-get -y install build-essential yasm nasm quilt rsync \
|
||||
xxd pkgconf curl wget unzip git subversion mercurial \
|
||||
autoconf automake libtool libtool-bin autopoint gettext cmake clang meson ninja-build \
|
||||
texinfo texi2html help2man flex bison groff \
|
||||
gperf itstool ragel libc6-dev libssl-dev \
|
||||
gtk-doc-tools gobject-introspection gawk \
|
||||
ocaml ocamlbuild libnum-ocaml-dev indent p7zip-full \
|
||||
python3-distutils python3-jinja2 python3-apt python-is-python3 && \
|
||||
apt-get -y clean && \
|
||||
git config --global user.email "builder@localhost" && \
|
||||
git config --global user.name "Builder" && \
|
||||
git config --global advice.detachedHead false
|
||||
|
||||
ENV CARGO_HOME="/opt/cargo" RUSTUP_HOME="/opt/rustup" PATH="/opt/cargo/bin:${PATH}"
|
||||
RUN curl https://sh.rustup.rs -sSf | bash -s -- -y --no-modify-path && \
|
||||
cargo install cargo-c && rm -rf "${CARGO_HOME}"/registry "${CARGO_HOME}"/git
|
||||
|
||||
RUN --mount=src=.,dst=/input \
|
||||
for s in /input/*.sh; do cp $s /usr/bin/$(echo $s | sed -e 's|.*/||' -e 's/\.sh$//'); done
|
||||
Executable
+10
@@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
set -xe
|
||||
FNAME="$1"
|
||||
URL="$2"
|
||||
SHA512="$3"
|
||||
SHAFILE="${FNAME}.sha512"
|
||||
wget -O "${FNAME}" "${URL}"
|
||||
trap "rm -f ${SHAFILE}" EXIT
|
||||
echo "${SHA512} ${FNAME}" > "${SHAFILE}"
|
||||
sha512sum -c "${SHAFILE}"
|
||||
Executable
+12
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
set -xe
|
||||
REPO="$1"
|
||||
REF="$2"
|
||||
DEST="$3"
|
||||
git init "$DEST"
|
||||
git -C "$DEST" remote add origin "$REPO"
|
||||
|
||||
retry-tool git -C "$DEST" fetch --depth=1 origin "$REF"
|
||||
|
||||
git -C "$DEST" config advice.detachedHead false
|
||||
git -C "$DEST" checkout FETCH_HEAD
|
||||
Executable
+16
@@ -0,0 +1,16 @@
|
||||
#!/bin/bash
|
||||
set -xe
|
||||
|
||||
RETRY_COUNTER=0
|
||||
MAX_RETRY=10
|
||||
CUR_TIMEOUT=120
|
||||
while [[ $RETRY_COUNTER -lt $MAX_RETRY ]]; do
|
||||
timeout $CUR_TIMEOUT "$@" && break || sleep $(shuf -i 5-90 -n 1)
|
||||
RETRY_COUNTER=$(( $RETRY_COUNTER + 1 ))
|
||||
CUR_TIMEOUT=$(( $CUR_TIMEOUT + 60 ))
|
||||
echo "Retry $RETRY_COUNTER..."
|
||||
done
|
||||
if [[ $RETRY_COUNTER -ge $MAX_RETRY ]]; then
|
||||
echo "Max retry count exceeded."
|
||||
exit 1
|
||||
fi
|
||||
Executable
+15
@@ -0,0 +1,15 @@
|
||||
#!/bin/bash
|
||||
set -xe
|
||||
|
||||
export RAW_CFLAGS="$CFLAGS"
|
||||
export RAW_CXXFLAGS="$CXXFLAGS"
|
||||
export RAW_LDFLAGS="$LDFLAGS"
|
||||
[[ -n "$STAGE_CFLAGS" ]] && export CFLAGS="$CFLAGS $STAGE_CFLAGS"
|
||||
[[ -n "$STAGE_CXXFLAGS" ]] && export CXXFLAGS="$CXXFLAGS $STAGE_CXXFLAGS"
|
||||
[[ -n "$STAGE_LDFLAGS" ]] && export LDFLAGS="$LDFLAGS $STAGE_LDFLAGS"
|
||||
|
||||
mkdir -p /stage
|
||||
source "$1"
|
||||
cd /stage
|
||||
ffbuild_dockerbuild
|
||||
rm -rf /stage "$FFBUILD_PREFIX"/bin
|
||||
Executable
+51
@@ -0,0 +1,51 @@
|
||||
#!/bin/bash
|
||||
set -xe
|
||||
cd "$(dirname "$0")"
|
||||
source util/vars.sh
|
||||
|
||||
TMPCFG="$(mktemp --suffix=.toml)"
|
||||
cat <<EOF >"$TMPCFG"
|
||||
[worker.oci]
|
||||
max-parallelism = 4
|
||||
EOF
|
||||
trap "rm -f '$TMPCFG'" EXIT
|
||||
|
||||
docker buildx inspect ffbuilder &>/dev/null || docker buildx create \
|
||||
--bootstrap \
|
||||
--name ffbuilder \
|
||||
--config "$TMPCFG" \
|
||||
--driver-opt network=host \
|
||||
--driver-opt env.BUILDKIT_STEP_LOG_MAX_SIZE=-1 \
|
||||
--driver-opt env.BUILDKIT_STEP_LOG_MAX_SPEED=-1
|
||||
|
||||
if [[ -z "$QUICKBUILD" ]]; then
|
||||
docker container inspect ffbuildreg &>/dev/null || \
|
||||
docker run --rm -d -p 127.0.0.1:0:5000 --name ffbuildreg registry:2
|
||||
LOCAL_REG_PORT="$(docker container inspect --format='{{range $p, $conf := .NetworkSettings.Ports}}{{(index $conf 0).HostPort}}{{end}}' ffbuildreg)"
|
||||
LOCAL_ROOT="127.0.0.1:${LOCAL_REG_PORT}/local"
|
||||
trap "rm -f '$TMPCFG'; docker container stop ffbuildreg" EXIT
|
||||
|
||||
if grep "FROM.*base.*" "images/base-${TARGET}/Dockerfile" >/dev/null 2>&1; then
|
||||
docker buildx --builder ffbuilder build \
|
||||
--cache-from=type=local,src=.cache/"${BASE_IMAGE/:/_}" \
|
||||
--cache-to=type=local,mode=max,dest=.cache/"${BASE_IMAGE/:/_}" \
|
||||
--push --tag "${LOCAL_ROOT}/base:latest" images/base
|
||||
fi
|
||||
|
||||
docker buildx --builder ffbuilder build \
|
||||
--cache-from=type=local,src=.cache/"${TARGET_IMAGE/:/_}" \
|
||||
--cache-to=type=local,mode=max,dest=.cache/"${TARGET_IMAGE/:/_}" \
|
||||
--push --tag "${LOCAL_ROOT}/base-${TARGET}:latest" \
|
||||
--build-arg GH_REPO="$LOCAL_ROOT" "images/base-${TARGET}"
|
||||
|
||||
export REGISTRY_OVERRIDE="127.0.0.1:${LOCAL_REG_PORT}" GITHUB_REPOSITORY="local"
|
||||
fi
|
||||
|
||||
./generate.sh "$TARGET" "$VARIANT" "${ADDINS[@]}"
|
||||
|
||||
docker buildx --builder ffbuilder build \
|
||||
--cache-from=type=local,src=.cache/"${IMAGE/:/_}" \
|
||||
--cache-to=type=local,mode=max,dest=.cache/"${IMAGE/:/_}" \
|
||||
--load --tag "$IMAGE" .
|
||||
|
||||
docker buildx rm -f ffbuilder
|
||||
@@ -0,0 +1,41 @@
|
||||
From 4956295de595932d39ec87460e91aeac08fb94aa Mon Sep 17 00:00:00 2001
|
||||
From: nyanmisaka <nst799610810@gmail.com>
|
||||
Date: Sat, 29 Oct 2022 00:07:43 +0800
|
||||
Subject: [PATCH] Fix the MFX plugins loading issue on linux
|
||||
|
||||
add a series of fallback paths for plugins.cfg, this should cover most linux distros.
|
||||
|
||||
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
|
||||
---
|
||||
src/mfxloader.cpp | 17 +++++++++++++++++
|
||||
1 file changed, 17 insertions(+)
|
||||
|
||||
diff --git a/src/mfxloader.cpp b/src/mfxloader.cpp
|
||||
index 2f676f5..a18b8c7 100644
|
||||
--- a/src/mfxloader.cpp
|
||||
+++ b/src/mfxloader.cpp
|
||||
@@ -452,7 +452,24 @@ mfxStatus MFXVideoUSER_Load(mfxSession session, const mfxPluginUID *uid, mfxU32
|
||||
if (MFX::g_GlobalCtx.m_plugins.empty()) {
|
||||
// Parsing plugin configuration file and loading information of
|
||||
// _all_ plugins registered on the system.
|
||||
+#if defined(__linux__)
|
||||
+ // Hardcode common plugins paths for most linux distros in case of
|
||||
+ // the legacy mfxdispatcher is configured to static build.
|
||||
+ const char *plugins_paths[4] = { "/plugins.cfg",
|
||||
+ "/usr/share/mfx/plugins.cfg",
|
||||
+ "/usr/local/share/mfx/plugins.cfg",
|
||||
+ "/opt/intel/mediasdk/plugins/plugins.cfg" };
|
||||
+ for (int i = 0; i < sizeof(plugins_paths) / sizeof(plugins_paths[0]); i++) {
|
||||
+ FILE *fp = NULL;
|
||||
+ if ((fp = fopen(plugins_paths[i], "r")) != NULL) {
|
||||
+ fclose(fp);
|
||||
+ parse(plugins_paths[i], MFX::g_GlobalCtx.m_plugins);
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+#else
|
||||
parse(MFX_PLUGINS_CONF_DIR "/plugins.cfg", MFX::g_GlobalCtx.m_plugins);
|
||||
+#endif
|
||||
}
|
||||
|
||||
// search for plugin description
|
||||
@@ -0,0 +1,28 @@
|
||||
Linear memory extents over SSIZE_MAX are undefined, so there is no
|
||||
point in protecting against them.
|
||||
diff -ru zvbi.orig/src/export.c zvbi/src/export.c
|
||||
--- zvbi.orig/src/export.c 2011-11-06 11:22:47.000000000 +0200
|
||||
+++ zvbi/src/export.c 2011-11-06 11:27:39.000000000 +0200
|
||||
@@ -1076,8 +1076,6 @@
|
||||
size_t count;
|
||||
|
||||
count = src_size;
|
||||
- if (unlikely (src_size > SSIZE_MAX))
|
||||
- count = SSIZE_MAX & -4096;
|
||||
|
||||
for (retry = 10;; --retry) {
|
||||
actual = write (e->_handle.fd, src, count);
|
||||
@@ -1632,12 +1630,7 @@
|
||||
free (e->buffer.data);
|
||||
}
|
||||
|
||||
- if (unlikely (e->buffer.offset > (size_t) SSIZE_MAX)) {
|
||||
- errno = EOVERFLOW;
|
||||
- actual = -1; /* failed */
|
||||
- } else {
|
||||
- actual = e->buffer.offset;
|
||||
- }
|
||||
+ actual = e->buffer.offset;
|
||||
} else {
|
||||
if (VBI_EXPORT_TARGET_ALLOC == e->target)
|
||||
free (e->buffer.data);
|
||||
@@ -0,0 +1,19 @@
|
||||
diff -ru zvbi.orig/contrib/ntsc-cc.c zvbi/contrib/ntsc-cc.c
|
||||
--- zvbi.orig/contrib/ntsc-cc.c 2011-11-06 11:22:47.000000000 +0200
|
||||
+++ zvbi/contrib/ntsc-cc.c 2011-11-06 11:29:04.000000000 +0200
|
||||
@@ -32,7 +32,6 @@
|
||||
#include <fcntl.h>
|
||||
#include <errno.h>
|
||||
#include <locale.h>
|
||||
-#include <sys/ioctl.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#ifdef HAVE_GETOPT_LONG
|
||||
@@ -44,6 +43,7 @@
|
||||
#include "src/libzvbi.h"
|
||||
|
||||
#ifdef ENABLE_V4L2
|
||||
+# include <sys/ioctl.h>
|
||||
# include <asm/types.h>
|
||||
# include "src/videodev2k.h"
|
||||
#endif
|
||||
@@ -0,0 +1,11 @@
|
||||
--- zvbi/configure.in 2013-08-28 13:52:48.000000000 +0000
|
||||
+++ zvbi.patched/configure.in 2016-11-02 21:25:34.292580446 +0000
|
||||
@@ -244,7 +244,7 @@
|
||||
dnl
|
||||
HAVE_PNG="yes"
|
||||
AC_CHECK_LIB(png, png_destroy_write_struct,
|
||||
- LIBS="$LIBS -lpng -lz", HAVE_PNG="no", -lz -lm)
|
||||
+ LIBS="-lpng -lz $LIBS", HAVE_PNG="no", -lz -lm)
|
||||
if test "x$HAVE_PNG" = xyes; then
|
||||
AC_DEFINE(HAVE_LIBPNG, 1, [Define if you have libpng])
|
||||
fi
|
||||
@@ -0,0 +1,167 @@
|
||||
diff -ruN zvbi/src/conv.c zvbi.new/src/conv.c
|
||||
--- zvbi/src/conv.c 2008-02-26 15:39:23.000000000 +0100
|
||||
+++ zvbi.new/src/conv.c 2008-09-11 21:05:18.000000000 +0200
|
||||
@@ -26,7 +26,9 @@
|
||||
#endif
|
||||
|
||||
#include <errno.h>
|
||||
+#ifndef _WIN32
|
||||
#include <langinfo.h>
|
||||
+#endif
|
||||
|
||||
#include "misc.h"
|
||||
#include "conv.h"
|
||||
@@ -1234,9 +1236,12 @@
|
||||
const char *dst_format;
|
||||
|
||||
dst_format = bind_textdomain_codeset (vbi_intl_domainname, NULL);
|
||||
-
|
||||
+#ifdef _WIN32
|
||||
+#warning this is wrong
|
||||
+#else
|
||||
if (NULL == dst_format)
|
||||
dst_format = nl_langinfo (CODESET);
|
||||
+#endif
|
||||
|
||||
return dst_format; /* may be NULL */
|
||||
}
|
||||
diff -ruN zvbi/src/export.c zvbi.new/src/export.c
|
||||
--- zvbi/src/export.c 2008-02-19 01:35:15.000000000 +0100
|
||||
+++ zvbi.new/src/export.c 2008-09-11 20:38:55.000000000 +0200
|
||||
@@ -40,6 +40,26 @@
|
||||
#include "conv.h"
|
||||
#include "vbi.h" /* asprintf */
|
||||
|
||||
+#ifndef EOVERFLOW
|
||||
+ #define EOVERFLOW 75
|
||||
+#endif
|
||||
+
|
||||
+#ifndef S_IRGRP
|
||||
+#define S_IRGRP 0
|
||||
+#endif
|
||||
+
|
||||
+#ifndef S_IWGRP
|
||||
+#define S_IWGRP 0
|
||||
+#endif
|
||||
+
|
||||
+#ifndef S_IROTH
|
||||
+#define S_IROTH 0
|
||||
+#endif
|
||||
+
|
||||
+#ifndef S_IWOTH
|
||||
+#define S_IWOTH 0
|
||||
+#endif
|
||||
+
|
||||
extern const char _zvbi_intl_domainname[];
|
||||
|
||||
/**
|
||||
diff -ruN zvbi/src/packet.c zvbi.new/src/packet.c
|
||||
--- zvbi/src/packet.c 2008-02-20 18:04:33.000000000 +0100
|
||||
+++ zvbi.new/src/packet.c 2008-09-11 21:00:35.000000000 +0200
|
||||
@@ -32,7 +32,9 @@
|
||||
#include <fcntl.h>
|
||||
#include <time.h>
|
||||
#include <errno.h>
|
||||
+#ifndef _WIN32
|
||||
#include <sys/ioctl.h>
|
||||
+#endif
|
||||
|
||||
#include "misc.h"
|
||||
#include "hamm.h"
|
||||
diff -ruN zvbi/src/proxy-msg.c zvbi.new/src/proxy-msg.c
|
||||
--- zvbi/src/proxy-msg.c 2008-02-19 01:35:21.000000000 +0100
|
||||
+++ zvbi.new/src/proxy-msg.c 2008-09-11 21:00:07.000000000 +0200
|
||||
@@ -129,7 +129,9 @@
|
||||
#include <netinet/tcp.h>
|
||||
#include <arpa/inet.h>
|
||||
#include <netdb.h>
|
||||
+#ifndef _WIN32
|
||||
#include <syslog.h>
|
||||
+#endif
|
||||
#include <assert.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/mman.h>
|
||||
diff -ruN zvbi/src/proxy-msg.h zvbi.new/src/proxy-msg.h
|
||||
--- zvbi/src/proxy-msg.h 2008-02-19 01:35:21.000000000 +0100
|
||||
+++ zvbi.new/src/proxy-msg.h 2008-09-11 20:59:40.000000000 +0200
|
||||
@@ -68,7 +68,9 @@
|
||||
#ifndef PROXY_MSG_H
|
||||
#define PROXY_MSG_H
|
||||
|
||||
+#ifndef _WIN32
|
||||
#include <sys/syslog.h>
|
||||
+#endif
|
||||
|
||||
/* Public */
|
||||
|
||||
diff -ruN zvbi/src/vbi.c zvbi.new/src/vbi.c
|
||||
--- zvbi/src/vbi.c 2008-03-05 14:33:04.000000000 +0100
|
||||
+++ zvbi.new/src/vbi.c 2008-09-11 20:57:55.000000000 +0200
|
||||
@@ -39,7 +39,9 @@
|
||||
#include <fcntl.h>
|
||||
#include <time.h>
|
||||
#include <errno.h>
|
||||
+#ifndef _WIN32
|
||||
#include <sys/ioctl.h>
|
||||
+#endif
|
||||
#include <sys/time.h>
|
||||
#include <pthread.h>
|
||||
|
||||
--- zvbi/src/io.c 2008-02-19 01:35:20.000000000 +0100
|
||||
+++ zvbi2/src/io.c 2008-09-11 21:18:59.000000000 +0200
|
||||
@@ -28,8 +28,10 @@
|
||||
|
||||
#include <fcntl.h> /* open() */
|
||||
#include <unistd.h> /* close(), mmap(), munmap(), gettimeofday() */
|
||||
+#ifndef _WIN32
|
||||
#include <sys/ioctl.h> /* ioctl() */
|
||||
#include <sys/mman.h> /* mmap(), munmap() */
|
||||
+#endif
|
||||
#include <sys/time.h> /* struct timeval */
|
||||
#include <sys/types.h>
|
||||
#include <errno.h>
|
||||
@@ -514,7 +516,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
-
|
||||
+#ifndef _WIN32
|
||||
/**
|
||||
* @internal
|
||||
*
|
||||
@@ -554,7 +556,7 @@
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
-
|
||||
+#endif
|
||||
/* Helper functions to log the communication between the library and drivers.
|
||||
FIXME remove fp arg, call user log function instead (0.3). */
|
||||
|
||||
@@ -668,7 +670,9 @@
|
||||
"EXCL", O_EXCL,
|
||||
"TRUNC", O_TRUNC,
|
||||
"APPEND", O_APPEND,
|
||||
+#ifndef _WIN32
|
||||
"NONBLOCK", O_NONBLOCK,
|
||||
+#endif
|
||||
0);
|
||||
fprintf (fp, ", 0%o)", mode);
|
||||
|
||||
@@ -773,6 +777,7 @@
|
||||
return err;
|
||||
}
|
||||
|
||||
+#ifndef _WIN32
|
||||
/**
|
||||
* @internal
|
||||
* Drop-in for mmap(). Logs the request on fp if not NULL.
|
||||
@@ -822,7 +827,7 @@
|
||||
|
||||
return r;
|
||||
}
|
||||
-
|
||||
+#endif
|
||||
/**
|
||||
* @internal
|
||||
* Drop-in for munmap(). Logs the request on fp if not NULL.
|
||||
@@ -0,0 +1,30 @@
|
||||
diff -ru zvbi/src/misc.h zvbi-fixed/src/misc.h
|
||||
--- zvbi/src/misc.h 2013-07-02 04:32:31.000000000 +0200
|
||||
+++ zvbi-fixed/src/misc.h 2013-08-08 21:37:22.000000000 +0200
|
||||
@@ -52,17 +52,6 @@
|
||||
# define unlikely(expr) __builtin_expect(expr, 0)
|
||||
#endif
|
||||
|
||||
-#undef __i386__
|
||||
-#undef __i686__
|
||||
-/* FIXME #cpu is deprecated
|
||||
-#if #cpu (i386)
|
||||
-# define __i386__ 1
|
||||
-#endif
|
||||
-#if #cpu (i686)
|
||||
-# define __i686__ 1
|
||||
-#endif
|
||||
-*/
|
||||
-
|
||||
/* &x == PARENT (&x.tm_min, struct tm, tm_min),
|
||||
safer than &x == (struct tm *) &x.tm_min. A NULL _ptr is safe and
|
||||
will return NULL, not -offsetof(_member). */
|
||||
@@ -156,8 +145,6 @@
|
||||
|
||||
#define likely(expr) (expr)
|
||||
#define unlikely(expr) (expr)
|
||||
-#undef __i386__
|
||||
-#undef __i686__
|
||||
|
||||
static char *
|
||||
PARENT_HELPER (char *p, unsigned int offset)
|
||||
Executable
+17
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/meganz/mingw-std-threads.git"
|
||||
SCRIPT_COMMIT="6c2061b7da41d6aa1b2162ff4383ec3ece864bc6"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == win* ]] || return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" mingw-std-threads
|
||||
cd mingw-std-threads
|
||||
|
||||
mkdir -p "$FFBUILD_PREFIX"/include
|
||||
cp *.h "$FFBUILD_PREFIX"/include
|
||||
}
|
||||
Executable
+61
@@ -0,0 +1,61 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/mirror/mingw-w64.git"
|
||||
SCRIPT_COMMIT="7dcf65a7f26071c6aa26d5a5a8689089ae9a6740"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == win* ]] || return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerlayer() {
|
||||
to_df "COPY --from=${SELFLAYER} /opt/mingw/. /"
|
||||
to_df "COPY --from=${SELFLAYER} /opt/mingw/. /opt/mingw"
|
||||
}
|
||||
|
||||
ffbuild_dockerfinal() {
|
||||
to_df "COPY --from=${PREVLAYER} /opt/mingw/. /"
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" mingw
|
||||
cd mingw
|
||||
|
||||
cd mingw-w64-headers
|
||||
|
||||
unset CFLAGS
|
||||
unset CXXFLAGS
|
||||
unset LDFLAGS
|
||||
unset PKG_CONFIG_LIBDIR
|
||||
|
||||
GCC_SYSROOT="$(${FFBUILD_CROSS_PREFIX}gcc -print-sysroot)"
|
||||
|
||||
local myconf=(
|
||||
--prefix="$GCC_SYSROOT/usr/$FFBUILD_TOOLCHAIN"
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
--with-default-win32-winnt="0x601"
|
||||
--enable-idl
|
||||
)
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install DESTDIR="/opt/mingw"
|
||||
|
||||
cd ../mingw-w64-libraries/winpthreads
|
||||
|
||||
local myconf=(
|
||||
--prefix="$GCC_SYSROOT/usr/$FFBUILD_TOOLCHAIN"
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
--with-pic
|
||||
--disable-shared
|
||||
--enable-static
|
||||
)
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install DESTDIR="/opt/mingw"
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --disable-w32threads --enable-pthreads
|
||||
}
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/util/macros.git"
|
||||
SCRIPT_COMMIT="0326ba3c4caa34116c0e7e4af98661858cf25d1c"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
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 "$SCRIPT_REPO" "$SCRIPT_COMMIT" xorg-macros
|
||||
cd xorg-macros
|
||||
|
||||
autoreconf -i
|
||||
./configure --prefix="$FFBUILD_PREFIX"
|
||||
make -j"$(nproc)"
|
||||
make install
|
||||
}
|
||||
Executable
+45
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://git.savannah.gnu.org/git/libiconv.git"
|
||||
SCRIPT_COMMIT="2582e7bb06f1638877713400e2d11db547798a49"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" iconv
|
||||
cd iconv
|
||||
|
||||
./gitsub.sh pull
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-extra-encodings
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-iconv
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-iconv
|
||||
}
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/GNOME/libxml2.git"
|
||||
SCRIPT_COMMIT="66f781cf385bf690892b48c181257841841d3d41"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxml2
|
||||
cd libxml2
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--without-python
|
||||
--disable-maintainer-mode
|
||||
--disable-shared
|
||||
--enable-static
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./autogen.sh "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libxml2
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libxml2
|
||||
}
|
||||
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/madler/zlib.git"
|
||||
SCRIPT_COMMIT="04f42ceca40f73e2978b50e93806c2a18c1281fc"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" zlib
|
||||
cd zlib
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--static
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
export CC="${FFBUILD_CROSS_PREFIX}gcc"
|
||||
export AR="${FFBUILD_CROSS_PREFIX}ar"
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-zlib
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-zlib
|
||||
}
|
||||
Executable
+56
@@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/FFTW/fftw3.git"
|
||||
SCRIPT_COMMIT="9426cd59106ffddde1f55131c07fa9c562fa2f8e"
|
||||
|
||||
ffbuild_enabled() {
|
||||
# Dependency of GPL-Only librubberband
|
||||
[[ $VARIANT == lgpl* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT_PINNED" fftw3f
|
||||
cd fftw3f
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-maintainer-mode
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--enable-single
|
||||
--disable-fortran
|
||||
--disable-doc
|
||||
--with-our-malloc
|
||||
--enable-threads
|
||||
--with-combined-threads
|
||||
--with-incoming-stack-boundary=2
|
||||
)
|
||||
|
||||
if [[ $TARGET != *arm64 ]]; then
|
||||
myconf+=(
|
||||
--enable-sse2
|
||||
--enable-avx
|
||||
--enable-avx-128-fma
|
||||
--enable-avx2
|
||||
--enable-avx512
|
||||
)
|
||||
else
|
||||
myconf+=(
|
||||
--enable-neon
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./bootstrap.sh "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/freetype/freetype.git"
|
||||
SCRIPT_COMMIT="109179c70ee8c9f101dd49700acbd9df124f9b1c"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" freetype
|
||||
cd freetype
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-libfreetype
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libfreetype
|
||||
}
|
||||
Executable
+47
@@ -0,0 +1,47 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/fribidi/fribidi.git"
|
||||
SCRIPT_COMMIT="a6a4defff24aabf9195f462f9a7736f3d9e9c120"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fribidi
|
||||
cd fribidi
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--buildtype=release
|
||||
--default-library=static
|
||||
-Dbin=false
|
||||
-Ddocs=false
|
||||
-Dtests=false
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--cross-file=/cross.meson
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
meson "${myconf[@]}" ..
|
||||
ninja -j$(nproc)
|
||||
ninja install
|
||||
|
||||
sed -i 's/Cflags:/Cflags: -DFRIBIDI_LIB_STATIC/' "$FFBUILD_PREFIX"/lib/pkgconfig/fribidi.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libfribidi
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libfribidi
|
||||
}
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gmplib.org/repo/gmp/"
|
||||
SCRIPT_HGREV="3ac5afa36be5"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
retry-tool sh -c "rm -rf gmp && hg clone -r '$SCRIPT_HGREV' -u '$SCRIPT_HGREV' '$SCRIPT_REPO' gmp"
|
||||
cd gmp
|
||||
|
||||
./.bootstrap
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-maintainer-mode
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-gmp
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-gmp
|
||||
}
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/xiph/ogg.git"
|
||||
SCRIPT_COMMIT="db5c7a49ce7ebda47b15b78471e78fb7f2483e22"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ogg
|
||||
cd ogg
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
Executable
+62
@@ -0,0 +1,62 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/openssl/openssl.git"
|
||||
SCRIPT_COMMIT="OpenSSL_1_1_1s"
|
||||
SCRIPT_TAGFILTER="OpenSSL_1_1_1*"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" openssl
|
||||
cd openssl
|
||||
|
||||
local myconf=(
|
||||
threads
|
||||
zlib
|
||||
no-shared
|
||||
enable-camellia
|
||||
enable-ec
|
||||
enable-srp
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
)
|
||||
|
||||
if [[ $TARGET == win64 ]]; then
|
||||
myconf+=(
|
||||
--cross-compile-prefix="$FFBUILD_CROSS_PREFIX"
|
||||
mingw64
|
||||
)
|
||||
elif [[ $TARGET == win32 ]]; then
|
||||
myconf+=(
|
||||
--cross-compile-prefix="$FFBUILD_CROSS_PREFIX"
|
||||
mingw
|
||||
)
|
||||
elif [[ $TARGET == linux64 ]]; then
|
||||
myconf+=(
|
||||
--cross-compile-prefix="$FFBUILD_CROSS_PREFIX"
|
||||
linux-x86_64
|
||||
)
|
||||
elif [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--cross-compile-prefix="$FFBUILD_CROSS_PREFIX"
|
||||
linux-aarch64
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
# OpenSSL build system prepends the cross prefix itself
|
||||
export CC="gcc"
|
||||
export CXX="g++"
|
||||
export AR="gcc-ar"
|
||||
export RANLIB="gcc-ranlib"
|
||||
|
||||
./Configure "${myconf[@]}"
|
||||
|
||||
sed -i -e "/^CFLAGS=/s|=.*|=${CFLAGS}|" -e "/^LDFLAGS=/s|=[[:space:]]*$|=${LDFLAGS}|" Makefile
|
||||
|
||||
make -j$(nproc)
|
||||
make install_sw
|
||||
}
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/xz-mirror/xz.git"
|
||||
SCRIPT_COMMIT="cf118c014683069b5dbe91898acdc40f2f0a1f5d"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" xz
|
||||
cd xz
|
||||
|
||||
./autogen.sh --no-po4a
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-symbol-versions
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-lzma
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-lzma
|
||||
}
|
||||
Executable
+45
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/fontconfig/fontconfig.git"
|
||||
SCRIPT_COMMIT="eb0a199e0658d3ba64ff19072cb2ae39c5ca7c4c"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fc
|
||||
cd fc
|
||||
|
||||
./autogen.sh --noconf
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-docs
|
||||
--enable-libxml2
|
||||
--enable-iconv
|
||||
--disable-shared
|
||||
--enable-static
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-fontconfig
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-fontconfig
|
||||
}
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/acoustid/chromaprint.git"
|
||||
SCRIPT_COMMIT="b6d5f131e0c693ea877cbf49e0174be9fb0f9856"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT_PINNED" chromaprint
|
||||
cd chromaprint
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
ls -lh "$FFBUILD_PREFIX"/lib/pkgconfig
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" -DBUILD_SHARED_LIBS=OFF -DBUILD_TOOLS=OFF -DBUILD_TESTS=OFF -DFFT_LIB=fftw3f ..
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-chromaprint
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-chromaprint
|
||||
}
|
||||
|
||||
ffbuild_cflags() {
|
||||
[[ $TARGET == win* ]] && echo '-DCHROMAPRINT_NODLL'
|
||||
}
|
||||
|
||||
ffbuild_libs() {
|
||||
echo '-lfftw3f -lstdc++'
|
||||
}
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/harfbuzz/harfbuzz.git"
|
||||
SCRIPT_COMMIT="630f09c8b6022184f7a414bb5e07c01898fae60c"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" harfbuzz
|
||||
cd harfbuzz
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export LIBS="-lpthread"
|
||||
|
||||
./autogen.sh "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://code.videolan.org/videolan/libudfread.git"
|
||||
SCRIPT_COMMIT="b3e6936a23f8af30a0be63d88f4695bdc0ea26e1"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libudfread
|
||||
cd libudfread
|
||||
|
||||
./bootstrap
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
ln -s libudfread.pc "$FFBUILD_PREFIX"/lib/pkgconfig/udfread.pc
|
||||
}
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/xiph/vorbis.git"
|
||||
SCRIPT_COMMIT="84c023699cdf023a32fa4ded32019f194afcdad0"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vorbis
|
||||
cd vorbis
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--disable-oggtest
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-libvorbis
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libvorbis
|
||||
}
|
||||
Executable
+56
@@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/KhronosGroup/OpenCL-Headers.git"
|
||||
SCRIPT_COMMIT="b590a6bfe034ea3a418b7b523e3490956bcb367a"
|
||||
|
||||
SCRIPT_REPO2="https://github.com/KhronosGroup/OpenCL-ICD-Loader.git"
|
||||
SCRIPT_COMMIT2="e009e321701fc851e157cadd969bfa5e675cef9c"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
mkdir opencl && cd opencl
|
||||
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" headers
|
||||
mkdir -p "$FFBUILD_PREFIX"/include/CL
|
||||
cp -r headers/CL/* "$FFBUILD_PREFIX"/include/CL/.
|
||||
|
||||
git-mini-clone "$SCRIPT_REPO2" "$SCRIPT_COMMIT2" loader
|
||||
cd loader
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" -DOPENCL_ICD_LOADER_HEADERS_DIR="$FFBUILD_PREFIX"/include -DOPENCL_ICD_LOADER_BUILD_SHARED_LIBS=OFF -DOPENCL_ICD_LOADER_DISABLE_OPENCLON12=ON -DOPENCL_ICD_LOADER_PIC=ON -DOPENCL_ICD_LOADER_BUILD_TESTING=OFF -DBUILD_TESTING=OFF ..
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
echo "prefix=$FFBUILD_PREFIX" > OpenCL.pc
|
||||
echo "exec_prefix=\${prefix}" >> OpenCL.pc
|
||||
echo "libdir=\${exec_prefix}/lib" >> OpenCL.pc
|
||||
echo "includedir=\${prefix}/include" >> OpenCL.pc
|
||||
echo >> OpenCL.pc
|
||||
echo "Name: OpenCL" >> OpenCL.pc
|
||||
echo "Description: OpenCL ICD Loader" >> OpenCL.pc
|
||||
echo "Version: 3.0" >> OpenCL.pc
|
||||
echo "Libs: -L\${libdir} -lOpenCL" >> OpenCL.pc
|
||||
echo "Cflags: -I\${includedir}" >> OpenCL.pc
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
echo "Libs.private: -ldl" >> OpenCL.pc
|
||||
elif [[ $TARGET == win* ]]; then
|
||||
echo "Libs.private: -lole32 -lshlwapi -lcfgmgr32" >> OpenCL.pc
|
||||
fi
|
||||
|
||||
mkdir -p "$FFBUILD_PREFIX"/lib/pkgconfig
|
||||
mv OpenCL.pc "$FFBUILD_PREFIX"/lib/pkgconfig/OpenCL.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-opencl
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-opencl
|
||||
}
|
||||
Executable
+33
@@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/proto/xcbproto.git"
|
||||
SCRIPT_COMMIT="842d91316243eb1f2e208231acc1512c2cf43a1f"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_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
|
||||
}
|
||||
Executable
+33
@@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/proto/xorgproto.git"
|
||||
SCRIPT_COMMIT="9740bd9bfa75a858853f07b8c06dd813ef692778"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_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
|
||||
}
|
||||
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxtrans.git"
|
||||
SCRIPT_COMMIT="c761c6505d49e8381a3eae94f2e5e118cbdf6487"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_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
|
||||
}
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxau.git"
|
||||
SCRIPT_COMMIT="4fbefa02d6c842401ff79065d364edd7087a12a6"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxau
|
||||
cd libxau
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXau.so.6,libXau.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXau{.so*,.la}
|
||||
}
|
||||
Executable
+55
@@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxcb.git"
|
||||
SCRIPT_COMMIT="33f3dbe3699a92e8ca18f470adac456e0b935e75"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxcb
|
||||
cd libxcb
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
--disable-devel-docs
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
for LIBNAME in "$FFBUILD_PREFIX"/lib/libxcb*.so.?; do
|
||||
gen-implib "$LIBNAME" "${LIBNAME%%.*}.a"
|
||||
rm "${LIBNAME%%.*}"{.so*,.la}
|
||||
done
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
return 0
|
||||
echo --enable-libxcb
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
return 0
|
||||
echo --disable-libxcb
|
||||
}
|
||||
Executable
+57
@@ -0,0 +1,57 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libx11.git"
|
||||
SCRIPT_COMMIT="b4f24b272c6ef888b6fcfcf80670c196b2e8f755"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libx11
|
||||
cd libx11
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
--without-xmlto
|
||||
--without-fop
|
||||
--without-xsltproc
|
||||
--without-lint
|
||||
--disable-specs
|
||||
--enable-ipv6
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
echo "Libs: -ldl" >> "$FFBUILD_PREFIX"/lib/pkgconfig/x11.pc
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libX11-xcb.so.1,libX11-xcb.a}
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libX11.so.6,libX11.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libX11{,-xcb}{.so*,.la}
|
||||
}
|
||||
Executable
+52
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxext.git"
|
||||
SCRIPT_COMMIT="67e82cc395f44faddd83ec3d0d21624fe91c6fc0"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxext
|
||||
cd libxext
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
--without-xmlto
|
||||
--without-fop
|
||||
--without-xsltproc
|
||||
--without-lint
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS -D_GNU_SOURCE"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXext.so.6,libXext.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXext{.so*,.la}
|
||||
}
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxfixes.git"
|
||||
SCRIPT_COMMIT="d10ec36c81a6b488d1f700a28c5bff4714287b78"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxfixes
|
||||
cd libxfixes
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXfixes.so.3,libXfixes.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXfixes{.so*,.la}
|
||||
}
|
||||
Executable
+48
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxi.git"
|
||||
SCRIPT_COMMIT="08431d0684f9a1edf199f6c6060d2bef1ac78399"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxi
|
||||
cd libxi
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXi.so.6,libXi.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXi{.so*,.la}
|
||||
}
|
||||
Executable
+48
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxinerama.git"
|
||||
SCRIPT_COMMIT="71dfee64feb84f907016940263b235a61c9e8960"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxinerama
|
||||
cd libxinerama
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXinerama.so.1,libXinerama.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXinerama{.so*,.la}
|
||||
}
|
||||
Executable
+48
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxrender.git"
|
||||
SCRIPT_COMMIT="e5e23272394c90731debd7e18dd167e8c25b5c15"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxrender
|
||||
cd libxrender
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXrender.so.1,libXrender.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXrender{.so*,.la}
|
||||
}
|
||||
Executable
+48
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxscrnsaver.git"
|
||||
SCRIPT_COMMIT="d39f92be6b513c28546ebb0baf335f32ab154a89"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxscrnsaver
|
||||
cd libxscrnsaver
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXss.so.1,libXss.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXss{.so*,.la}
|
||||
}
|
||||
Executable
+48
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxxf86vm.git"
|
||||
SCRIPT_COMMIT="7fe2d41f164d3015216c1079cc7fbce1eea90c98"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxxf86vm
|
||||
cd libxxf86vm
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXxf86vm.so.1,libXxf86vm.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXxf86vm{.so*,.la}
|
||||
}
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/glvnd/libglvnd.git"
|
||||
SCRIPT_COMMIT="58d49d7f1db39aa2ffb018de478bef30e2e855f6"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" glvnd
|
||||
cd glvnd
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--buildtype=release
|
||||
--default-library=static
|
||||
-Dasm=enabled
|
||||
-Dx11=enabled
|
||||
-Degl=true
|
||||
-Dglx=enabled
|
||||
-Dgles1=true
|
||||
-Dgles2=true
|
||||
-Dheaders=true
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--cross-file=/cross.meson
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
meson "${myconf[@]}" ..
|
||||
ninja -j"$(nproc)"
|
||||
ninja install
|
||||
}
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxcursor.git"
|
||||
SCRIPT_COMMIT="27adb16027fa99d83818a0ed9f6623cb03f0c574"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxcursor
|
||||
cd libxcursor
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXcursor.so.1,libXcursor.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXcursor{.so*,.la}
|
||||
}
|
||||
Executable
+48
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxrandr.git"
|
||||
SCRIPT_COMMIT="7181160b2c32b1bb804792990783fa25c1122bae"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxrandr
|
||||
cd libxrandr
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXrandr.so.2,libXrandr.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXrandr{.so*,.la}
|
||||
}
|
||||
Executable
+60
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libxv.git"
|
||||
SCRIPT_COMMIT="9744d1f77b092eb4982c60e4750136fb19683545"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
[[ $ADDINS_STR == *4.4* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libxv
|
||||
cd libxv
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
--without-lint
|
||||
)
|
||||
|
||||
if [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--disable-malloc0returnsnull
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libXv.so.1,libXv.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libXv{.so*,.la}
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
return 0
|
||||
echo --enable-xlib
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
return 0
|
||||
echo --disable-xlib
|
||||
}
|
||||
Executable
+22
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_SKIP="1"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
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() {
|
||||
rm "$FFBUILD_PREFIX"/lib/lib*.so* || true
|
||||
rm "$FFBUILD_PREFIX"/lib/*.la || true
|
||||
}
|
||||
|
||||
ffbuild_libs() {
|
||||
echo -ldl
|
||||
}
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/GPUOpen-LibrariesAndSDKs/AMF.git"
|
||||
SCRIPT_COMMIT="9f558757af85029541110139586c35f8d4c6b2ad"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == *arm64 ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" amf
|
||||
cd amf
|
||||
|
||||
mkdir -p "$FFBUILD_PREFIX"/include
|
||||
mv amf/public/include "$FFBUILD_PREFIX"/include/AMF
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
[[ $TARGET != *arm64 ]] && echo --enable-amf
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $TARGET != *arm64 ]] && echo --disable-amf
|
||||
}
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://code.videolan.org/videolan/dav1d.git"
|
||||
SCRIPT_COMMIT="4b9f5b704e299543afcea87f375a308b90ef6c70"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" dav1d
|
||||
cd dav1d
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--buildtype=release
|
||||
--default-library=static
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--cross-file=/cross.meson
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
meson "${myconf[@]}" ..
|
||||
ninja -j$(nproc)
|
||||
ninja install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libdav1d
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libdav1d
|
||||
}
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_SKIP="1"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == win* ]]
|
||||
}
|
||||
|
||||
ffbuild_dockerstage() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
[[ $TARGET == win* ]] && echo --enable-dxva2 --enable-d3d11va
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $TARGET == win* ]] && echo --disable-dxva2 --disable-d3d11va
|
||||
}
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/wtaymans/fdk-aac-stripped.git"
|
||||
SCRIPT_COMMIT="585981a49f2186b0d2e47c64bf6b5abf539395f8"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" fdk
|
||||
cd fdk
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
--disable-example
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-libfdk-aac
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libfdk-aac
|
||||
}
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/FFmpeg/nv-codec-headers.git"
|
||||
SCRIPT_COMMIT="f8ae7a49bfef2f99d2c931a791dc3863fda67bf3"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == *arm64 ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ffnvcodec
|
||||
cd ffnvcodec
|
||||
|
||||
make PREFIX="$FFBUILD_PREFIX" install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
[[ $TARGET != *arm64 ]] && echo --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $TARGET != *arm64 ]] && echo --disable-ffnvcodec --disable-cuda --disable-cuda-llvm --disable-cuvid --disable-nvdec --disable-nvenc
|
||||
}
|
||||
|
||||
ffbuild_cflags() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_ldflags() {
|
||||
return 0
|
||||
}
|
||||
Executable
+45
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/libass/libass.git"
|
||||
SCRIPT_COMMIT="44beae2ae57790ba592b8f0d20c0b51006f6b7c7"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" ass
|
||||
cd ass
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$CFLAGS -Dread_file=libass_internal_read_file"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libass
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libass
|
||||
}
|
||||
Executable
+50
@@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://code.videolan.org/videolan/libbluray.git"
|
||||
SCRIPT_COMMIT="c923cc09c274934452f795aa06d3a5aadb31d6fb"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libbluray
|
||||
cd libbluray
|
||||
|
||||
./bootstrap
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
--disable-doxygen-doc
|
||||
--disable-doxygen-dot
|
||||
--disable-doxygen-html
|
||||
--disable-doxygen-ps
|
||||
--disable-doxygen-pdf
|
||||
--disable-examples
|
||||
--disable-bdjava-jar
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-libbluray
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libbluray
|
||||
}
|
||||
Executable
+49
@@ -0,0 +1,49 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://svn.code.sf.net/p/lame/svn/trunk/lame"
|
||||
SCRIPT_REV="6507"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
retry-tool sh -c "rm -rf lame && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' lame"
|
||||
cd lame
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--enable-nasm
|
||||
--disable-gtktest
|
||||
--disable-cpml
|
||||
--disable-frontend
|
||||
--disable-decoder
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$CFLAGS -DNDEBUG"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libmp3lame
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libmp3lame
|
||||
}
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/xiph/opus.git"
|
||||
SCRIPT_COMMIT="bce1f392353d72d77d543bb2069a044ae1045e9d"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" opus
|
||||
cd opus
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--disable-extra-programs
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-libopus
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libopus
|
||||
}
|
||||
Executable
+48
@@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/xiph/theora.git"
|
||||
SCRIPT_COMMIT="7180717276af1ebc7da15c83162d6c5d6203aabf"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" theora
|
||||
cd theora
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
--disable-examples
|
||||
--disable-oggtest
|
||||
--disable-vorbistest
|
||||
--disable-spec
|
||||
--disable-doc
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-libtheora
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libtheora
|
||||
}
|
||||
Executable
+65
@@ -0,0 +1,65 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://chromium.googlesource.com/webm/libvpx"
|
||||
SCRIPT_COMMIT="fb2d1616f657f6617a6d3ea1cf6e06100f92cddd"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libvpx
|
||||
cd libvpx
|
||||
|
||||
local myconf=(
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--enable-pic
|
||||
--disable-examples
|
||||
--disable-tools
|
||||
--disable-docs
|
||||
--disable-unit-tests
|
||||
--enable-vp9-highbitdepth
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
)
|
||||
|
||||
if [[ $TARGET == win64 ]]; then
|
||||
myconf+=(
|
||||
--target=x86_64-win64-gcc
|
||||
)
|
||||
export CROSS="$FFBUILD_CROSS_PREFIX"
|
||||
elif [[ $TARGET == win32 ]]; then
|
||||
myconf+=(
|
||||
--target=x86-win32-gcc
|
||||
)
|
||||
export CROSS="$FFBUILD_CROSS_PREFIX"
|
||||
elif [[ $TARGET == linux64 ]]; then
|
||||
myconf+=(
|
||||
--target=x86_64-linux-gcc
|
||||
)
|
||||
export CROSS="$FFBUILD_CROSS_PREFIX"
|
||||
elif [[ $TARGET == linuxarm64 ]]; then
|
||||
myconf+=(
|
||||
--target=arm64-linux-gcc
|
||||
)
|
||||
export CROSS="$FFBUILD_CROSS_PREFIX"
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
# Work around strip breaking LTO symbol index
|
||||
"$RANLIB" "$FFBUILD_PREFIX"/lib/libvpx.a
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libvpx
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libvpx
|
||||
}
|
||||
Executable
+52
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://chromium.googlesource.com/webm/libwebp"
|
||||
SCRIPT_COMMIT="3f73e8f7ac83e97a26346886b529b61809a839f5"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" webp
|
||||
cd webp
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
--enable-libwebpmux
|
||||
--disable-libwebpextras
|
||||
--disable-libwebpdemux
|
||||
--disable-sdl
|
||||
--disable-gl
|
||||
--disable-png
|
||||
--disable-jpeg
|
||||
--disable-tiff
|
||||
--disable-gif
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-libwebp
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libwebp
|
||||
}
|
||||
Executable
+55
@@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/lu-zero/mfx_dispatch.git"
|
||||
SCRIPT_COMMIT="7e4d221c36c630c1250b23a5dfa15657bc04c10c"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == *arm64 ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerstage() {
|
||||
to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=patches/mfx,dst=/patches run_stage /stage.sh"
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" mfx
|
||||
cd mfx
|
||||
|
||||
for patch in /patches/*.patch; do
|
||||
echo "Applying $patch"
|
||||
patch -p1 < "$patch"
|
||||
done
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
ln -s libmfx.pc "$FFBUILD_PREFIX"/lib/pkgconfig/mfx.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
[[ $TARGET != *arm64 ]] && echo --enable-libmfx
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $TARGET != *arm64 ]] && echo --disable-libmfx
|
||||
}
|
||||
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/oneapi-src/oneVPL.git"
|
||||
SCRIPT_COMMIT="17f1ef9abb52c10ca88c57508a30de63c4e1bb16"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == *arm64 ]] && return -1
|
||||
return -1
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" onevpl
|
||||
cd onevpl
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
cmake -GNinja -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" \
|
||||
-DCMAKE_INSTALL_BINDIR="$FFBUILD_PREFIX"/bin -DCMAKE_INSTALL_LIBDIR="$FFBUILD_PREFIX"/lib \
|
||||
-DBUILD_DISPATCHER=ON -DBUILD_DEV=ON \
|
||||
-DBUILD_PREVIEW=OFF -DBUILD_TOOLS=OFF -DBUILD_TOOLS_ONEVPL_EXPERIMENTAL=OFF -DINSTALL_EXAMPLE_CODE=OFF \
|
||||
-DBUILD_SHARED_LIBS=OFF -DBUILD_TESTS=OFF ..
|
||||
|
||||
ninja -j$(nproc)
|
||||
ninja install
|
||||
|
||||
rm -rf "$FFBUILD_PREFIX"/{etc,share}
|
||||
|
||||
cat /opt/ffbuild/lib/pkgconfig/vpl.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
return 0
|
||||
echo --enable-libvpl
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
return 0
|
||||
echo --disable-libvpl
|
||||
}
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_SKIP="1"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == win* ]]
|
||||
}
|
||||
|
||||
ffbuild_dockerstage() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
[[ $TARGET == win* ]] && echo --enable-schannel
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $TARGET == win* ]] && echo --disable-schannel
|
||||
}
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/Haivision/srt.git"
|
||||
SCRIPT_COMMIT="e082f30aa5d6346105be5333fc861e486f94a38d"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" srt
|
||||
cd srt
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" \
|
||||
-DENABLE_SHARED=OFF -DENABLE_STATIC=ON -DENABLE_CXX_DEPS=ON -DUSE_STATIC_LIBSTDCXX=ON -DENABLE_ENCRYPTION=ON -DENABLE_APPS=OFF ..
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
echo "Libs.private: -lstdc++" >> "$FFBUILD_PREFIX"/lib/pkgconfig/srt.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libsrt
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libsrt
|
||||
}
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.com/AOMediaCodec/SVT-AV1.git"
|
||||
SCRIPT_COMMIT="2f879beaa62dfb86983db8a6ab63fa9bcf6cd766"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == win32 ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git clone "$SCRIPT_REPO" svtav1
|
||||
cd svtav1
|
||||
git checkout "$SCRIPT_COMMIT"
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTING=OFF -DBUILD_APPS=OFF -DENABLE_AVX512=ON ..
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libsvtav1
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libsvtav1
|
||||
}
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/xorg/lib/libpciaccess.git"
|
||||
SCRIPT_COMMIT="935f0b4d6983f77c4f35e6d492f9f2c2d1ed57f9"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libpciaccess
|
||||
cd libpciaccess
|
||||
|
||||
autoreconf -fi
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
--with-zlib
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libpciaccess.so.0,libpciaccess.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libpciaccess{.so*,.la}
|
||||
|
||||
echo "Libs: -ldl" >> "$FFBUILD_PREFIX"/lib/pkgconfig/pciaccess.pc
|
||||
}
|
||||
Executable
+61
@@ -0,0 +1,61 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://gitlab.freedesktop.org/mesa/drm.git"
|
||||
SCRIPT_COMMIT="0a8fad5f5c2197c7585daa04e414fd9c67042e10"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libdrm
|
||||
cd libdrm
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
-Ddefault_library=shared
|
||||
-Dudev=false
|
||||
-Dcairo-tests=disabled
|
||||
-Dvalgrind=disabled
|
||||
-Dexynos=disabled
|
||||
-Dfreedreno=disabled
|
||||
-Domap=disabled
|
||||
-Detnaviv=disabled
|
||||
-Dintel=enabled
|
||||
-Dnouveau=enabled
|
||||
-Dradeon=enabled
|
||||
-Damdgpu=enabled
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--cross-file=/cross.meson
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
meson "${myconf[@]}" ..
|
||||
ninja -j$(nproc)
|
||||
ninja install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libdrm.so.2,libdrm.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libdrm*.so*
|
||||
|
||||
echo "Libs: -ldl" >> "$FFBUILD_PREFIX"/lib/pkgconfig/libdrm.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
[[ $TARGET == linux* ]] && echo --enable-libdrm
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $TARGET == linux* ]] && echo --disable-libdrm
|
||||
}
|
||||
Executable
+62
@@ -0,0 +1,62 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/intel/libva.git"
|
||||
SCRIPT_COMMIT="391ef4021a0a7f2a011d674fb07c02d922445c0d"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
[[ $TARGET == linuxarm64 ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" libva
|
||||
cd libva
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--enable-shared
|
||||
--disable-static
|
||||
--with-pic
|
||||
--disable-docs
|
||||
--enable-drm
|
||||
--enable-x11
|
||||
--disable-glx
|
||||
--disable-wayland
|
||||
)
|
||||
|
||||
if [[ $TARGET == linux64 ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
--with-drivers-path="/usr/lib/x86_64-linux-gnu/dri"
|
||||
--sysconfdir="/etc"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
export CFLAGS="$RAW_CFLAGS"
|
||||
export LDFLAFS="$RAW_LDFLAGS"
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libva.so.2,libva.a}
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libva-drm.so.2,libva-drm.a}
|
||||
gen-implib "$FFBUILD_PREFIX"/lib/{libva-x11.so.2,libva-x11.a}
|
||||
rm "$FFBUILD_PREFIX"/lib/libva{,-drm,-x11}{.so*,.la}
|
||||
|
||||
echo "Libs: -ldl" >> "$FFBUILD_PREFIX"/lib/pkgconfig/libva.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
[[ $TARGET == linux* ]] && [[ $TARGET != linuxarm64 ]] && echo --enable-vaapi
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $TARGET == linux* ]] && [[ $TARGET != linuxarm64 ]] && echo --disable-vaapi
|
||||
}
|
||||
Executable
+13
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_SKIP="1"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET != linux* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
rm "$FFBUILD_PREFIX"/lib/lib*.so* || true
|
||||
rm "$FFBUILD_PREFIX"/lib/*.la || true
|
||||
}
|
||||
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/KhronosGroup/Vulkan-Headers.git"
|
||||
SCRIPT_COMMIT="v1.3.234"
|
||||
SCRIPT_TAGFILTER="v?.*.*"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" vkheaders
|
||||
cd vkheaders
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" ..
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
cat >"$FFBUILD_PREFIX"/lib/pkgconfig/vulkan.pc <<EOF
|
||||
prefix=$FFBUILD_PREFIX
|
||||
includedir=\${prefix}/include
|
||||
|
||||
Name: vulkan
|
||||
Version: ${SCRIPT_COMMIT:1}
|
||||
Description: Vulkan (Headers Only)
|
||||
Cflags: -I\${includedir}
|
||||
EOF
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-vulkan
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-vulkan
|
||||
}
|
||||
Executable
+50
@@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/google/shaderc.git"
|
||||
SCRIPT_COMMIT="dc9d28ae95594edaef725012acd9de15a7342048"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" shaderc
|
||||
cd shaderc
|
||||
|
||||
./utils/git-sync-deps
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
cmake -GNinja -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" \
|
||||
-DSHADERC_SKIP_TESTS=ON -DSHADERC_SKIP_EXAMPLES=ON -DSHADERC_SKIP_COPYRIGHT_CHECK=ON \
|
||||
-DENABLE_EXCEPTIONS=ON -DENABLE_CTEST=OFF -DENABLE_GLSLANG_BINARIES=OFF -DSPIRV_SKIP_EXECUTABLES=ON \
|
||||
-DSPIRV_TOOLS_BUILD_STATIC=ON -DBUILD_SHARED_LIBS=OFF ..
|
||||
ninja -j$(nproc)
|
||||
ninja install
|
||||
|
||||
# for some reason, this does not get installed...
|
||||
cp libshaderc_util/libshaderc_util.a "$FFBUILD_PREFIX"/lib
|
||||
|
||||
echo "Libs: -lstdc++" >> "$FFBUILD_PREFIX"/lib/pkgconfig/shaderc_combined.pc
|
||||
echo "Libs: -lstdc++" >> "$FFBUILD_PREFIX"/lib/pkgconfig/shaderc_static.pc
|
||||
|
||||
cp "$FFBUILD_PREFIX"/lib/pkgconfig/{shaderc_combined,shaderc}.pc
|
||||
|
||||
if [[ $TARGET == win* ]]; then
|
||||
rm -r "$FFBUILD_PREFIX"/bin "$FFBUILD_PREFIX"/lib/*.dll.a
|
||||
elif [[ $TARGET == linux* ]]; then
|
||||
rm -r "$FFBUILD_PREFIX"/bin "$FFBUILD_PREFIX"/lib/*.so*
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libshaderc
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $ADDINS_STR == *4.4* ]] && return 0
|
||||
echo --disable-libshaderc
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/KhronosGroup/SPIRV-Cross.git"
|
||||
SCRIPT_COMMIT="edd66a2fc9e932ad0d3dce78f2627eeae91c2660"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" spirv-cross
|
||||
cd spirv-cross
|
||||
|
||||
VER_MAJ="$(grep 'set(spirv-cross-abi-major' CMakeLists.txt | sed -re 's/.* ([0-9]+)\)/\1/')"
|
||||
VER_MIN="$(grep 'set(spirv-cross-abi-minor' CMakeLists.txt | sed -re 's/.* ([0-9]+)\)/\1/')"
|
||||
VER_PCH="$(grep 'set(spirv-cross-abi-patch' CMakeLists.txt | sed -re 's/.* ([0-9]+)\)/\1/')"
|
||||
VER_FULL="$VER_MAJ.$VER_MIN.$VER_PCH"
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX" \
|
||||
-DSPIRV_CROSS_SHARED=OFF -DSPIRV_CROSS_STATIC=ON -DSPIRV_CROSS_CLI=OFF -DSPIRV_CROSS_ENABLE_TESTS=OFF -DSPIRV_CROSS_FORCE_PIC=ON -DSPIRV_CROSS_ENABLE_CPP=OFF ..
|
||||
make -j$(nproc)
|
||||
make install
|
||||
|
||||
cat >"$FFBUILD_PREFIX"/lib/pkgconfig/spirv-cross-c-shared.pc <<EOF
|
||||
prefix=$FFBUILD_PREFIX
|
||||
exec_prefix=\${prefix}
|
||||
libdir=\${prefix}/lib
|
||||
sharedlibdir=\${prefix}/lib
|
||||
includedir=\${prefix}/include/spirv_cross
|
||||
|
||||
Name: spirv-cross-c-shared
|
||||
Description: C API for SPIRV-Cross
|
||||
Version: $VER_FULL
|
||||
|
||||
Requires:
|
||||
Libs: -L\${libdir} -L\${sharedlibdir} -lspirv-cross-c -lspirv-cross-glsl -lspirv-cross-hlsl -lspirv-cross-reflect -lspirv-cross-msl -lspirv-cross-util -lspirv-cross-core -lstdc++
|
||||
Cflags: -I\${includedir}
|
||||
EOF
|
||||
}
|
||||
Executable
+61
@@ -0,0 +1,61 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://code.videolan.org/videolan/libplacebo.git"
|
||||
SCRIPT_COMMIT="c0373263e665248b856625a71ff9a17d86218eef"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" placebo
|
||||
cd placebo
|
||||
git submodule update --init --recursive
|
||||
|
||||
mkdir build && cd build
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--buildtype=release
|
||||
--default-library=static
|
||||
-Dvulkan=enabled
|
||||
-Dvk-proc-addr=disabled
|
||||
-Dvulkan-registry="$FFBUILD_PREFIX"/share/vulkan/registry/vk.xml
|
||||
-Dshaderc=enabled
|
||||
-Dglslang=disabled
|
||||
-Ddemos=false
|
||||
-Dtests=false
|
||||
-Dbench=false
|
||||
-Dfuzz=false
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* ]]; then
|
||||
myconf+=(
|
||||
-Dd3d11=enabled
|
||||
)
|
||||
fi
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--cross-file=/cross.meson
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
meson "${myconf[@]}" ..
|
||||
ninja -j$(nproc)
|
||||
ninja install
|
||||
|
||||
echo "Libs.private: -lstdc++" >> "$FFBUILD_PREFIX"/lib/pkgconfig/libplacebo.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libplacebo
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
[[ $ADDINS_STR == *4.4* ]] && return 0
|
||||
echo --disable-libplacebo
|
||||
}
|
||||
Executable
+53
@@ -0,0 +1,53 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/mirror/x264.git"
|
||||
SCRIPT_COMMIT="b093bbe7d9bc642c8f24067cbdcc73bb43562eab"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $VARIANT == lgpl* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" x264
|
||||
cd x264
|
||||
|
||||
local myconf=(
|
||||
--disable-cli
|
||||
--enable-static
|
||||
--enable-pic
|
||||
--disable-lavf
|
||||
--disable-swscale
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
--cross-prefix="$FFBUILD_CROSS_PREFIX"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -j$(nproc)
|
||||
make install
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libx264
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libx264
|
||||
}
|
||||
|
||||
ffbuild_cflags() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_ldflags() {
|
||||
return 0
|
||||
}
|
||||
Executable
+82
@@ -0,0 +1,82 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://bitbucket.org/multicoreware/x265_git.git"
|
||||
SCRIPT_COMMIT="40e37bce9a357fb18f70ff0852015983cf90a6d3"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $VARIANT == lgpl* ]] && return -1
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git clone "$SCRIPT_REPO" x265
|
||||
cd x265
|
||||
git checkout "$SCRIPT_COMMIT"
|
||||
|
||||
local common_config=(
|
||||
-DCMAKE_INSTALL_PREFIX="$FFBUILD_PREFIX"
|
||||
-DCMAKE_TOOLCHAIN_FILE="$FFBUILD_CMAKE_TOOLCHAIN"
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
-DENABLE_SHARED=OFF
|
||||
-DENABLE_CLI=OFF
|
||||
-DCMAKE_ASM_NASM_FLAGS=-w-macro-params-legacy
|
||||
)
|
||||
|
||||
if [[ $TARGET != *32 ]]; then
|
||||
mkdir 8bit 10bit 12bit
|
||||
cmake "${common_config[@]}" -DHIGH_BIT_DEPTH=ON -DEXPORT_C_API=OFF -DENABLE_HDR10_PLUS=ON -DMAIN12=ON -S source -B 12bit &
|
||||
cmake "${common_config[@]}" -DHIGH_BIT_DEPTH=ON -DEXPORT_C_API=OFF -DENABLE_HDR10_PLUS=ON -S source -B 10bit &
|
||||
cmake "${common_config[@]}" -DEXTRA_LIB="x265_main10.a;x265_main12.a" -DEXTRA_LINK_FLAGS=-L. -DLINKED_10BIT=ON -DLINKED_12BIT=ON -S source -B 8bit &
|
||||
wait
|
||||
|
||||
cat >Makefile <<"EOF"
|
||||
all: 12bit/libx265.a 10bit/libx265.a 8bit/libx265.a
|
||||
|
||||
%/libx265.a:
|
||||
$(MAKE) -C $(subst /libx265.a,,$@)
|
||||
|
||||
.PHONY: all
|
||||
EOF
|
||||
|
||||
make -j$(nproc)
|
||||
|
||||
cd 8bit
|
||||
mv ../12bit/libx265.a ../8bit/libx265_main12.a
|
||||
mv ../10bit/libx265.a ../8bit/libx265_main10.a
|
||||
mv libx265.a libx265_main.a
|
||||
|
||||
${FFBUILD_CROSS_PREFIX}ar -M <<EOF
|
||||
CREATE libx265.a
|
||||
ADDLIB libx265_main.a
|
||||
ADDLIB libx265_main10.a
|
||||
ADDLIB libx265_main12.a
|
||||
SAVE
|
||||
END
|
||||
EOF
|
||||
else
|
||||
mkdir 8bit
|
||||
cd 8bit
|
||||
cmake "${common_config[@]}" ../source
|
||||
make -j$(nproc)
|
||||
fi
|
||||
|
||||
make install
|
||||
|
||||
echo "Libs.private: -lstdc++" >> "$FFBUILD_PREFIX"/lib/pkgconfig/x265.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libx265
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libx265
|
||||
}
|
||||
|
||||
ffbuild_cflags() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_ldflags() {
|
||||
return 0
|
||||
}
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://github.com/sekrit-twc/zimg.git"
|
||||
SCRIPT_COMMIT="48eec5c68b086bbae0f75498e25b5a229e5ea684"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" zimg
|
||||
cd zimg
|
||||
git submodule update --init --recursive --depth=1
|
||||
|
||||
./autogen.sh
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $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-libzimg
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libzimg
|
||||
}
|
||||
Executable
+61
@@ -0,0 +1,61 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_REPO="https://svn.code.sf.net/p/zapping/svn/trunk/vbi"
|
||||
SCRIPT_REV="4270"
|
||||
|
||||
ffbuild_enabled() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerstage() {
|
||||
to_df "RUN --mount=src=${SELF},dst=/stage.sh --mount=src=patches/zvbi,dst=/patches run_stage /stage.sh"
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
retry-tool sh -c "rm -rf zvbi && svn checkout '${SCRIPT_REPO}@${SCRIPT_REV}' zvbi"
|
||||
cd zvbi
|
||||
|
||||
for patch in /patches/*.patch; do
|
||||
echo "Applying $patch"
|
||||
patch -p1 < "$patch"
|
||||
done
|
||||
|
||||
autoreconf -i
|
||||
|
||||
local myconf=(
|
||||
--prefix="$FFBUILD_PREFIX"
|
||||
--disable-shared
|
||||
--enable-static
|
||||
--with-pic
|
||||
--without-doxygen
|
||||
--without-x
|
||||
--disable-dvb
|
||||
--disable-bktr
|
||||
--disable-nls
|
||||
--disable-proxy
|
||||
)
|
||||
|
||||
if [[ $TARGET == win* || $TARGET == linux* ]]; then
|
||||
myconf+=(
|
||||
--host="$FFBUILD_TOOLCHAIN"
|
||||
)
|
||||
else
|
||||
echo "Unknown target"
|
||||
return -1
|
||||
fi
|
||||
|
||||
./configure "${myconf[@]}"
|
||||
make -C src -j$(nproc)
|
||||
make -C src install
|
||||
make SUBDIRS=. install
|
||||
|
||||
sed -i "s/\/[^ ]*libiconv.a/-liconv/" "$FFBUILD_PREFIX"/lib/pkgconfig/zvbi-0.2.pc
|
||||
}
|
||||
|
||||
ffbuild_configure() {
|
||||
echo --enable-libzvbi
|
||||
}
|
||||
|
||||
ffbuild_unconfigure() {
|
||||
echo --disable-libzvbi
|
||||
}
|
||||
Executable
+33
@@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
|
||||
SCRIPT_SKIP="1"
|
||||
|
||||
ffbuild_enabled() {
|
||||
[[ $TARGET == linux* ]]
|
||||
}
|
||||
|
||||
ffbuild_dockerfinal() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerlayer() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerstage() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_dockerbuild() {
|
||||
return 0
|
||||
}
|
||||
|
||||
ffbuild_ldexeflags() {
|
||||
echo '-pie'
|
||||
|
||||
if [[ $VARIANT == *shared* ]]; then
|
||||
# Can't escape escape hell
|
||||
echo -Wl,-rpath='\\\\\\\$\\\$ORIGIN'
|
||||
echo -Wl,-rpath='\\\\\\\$\\\$ORIGIN/../lib'
|
||||
fi
|
||||
}
|
||||
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
git fetch --tags
|
||||
TAGS=( $(git tag -l "autobuild-*" | sort -r) )
|
||||
|
||||
KEEP_LATEST=14
|
||||
KEEP_MONTHLY=24
|
||||
|
||||
LATEST_TAGS=()
|
||||
MONTHLY_TAGS=()
|
||||
|
||||
CUR_MONTH="-1"
|
||||
|
||||
for TAG in ${TAGS[@]}; do
|
||||
if [[ ${#LATEST_TAGS[@]} -lt ${KEEP_LATEST} ]]; then
|
||||
LATEST_TAGS+=( "$TAG" )
|
||||
fi
|
||||
|
||||
if [[ ${#MONTHLY_TAGS[@]} -lt ${KEEP_MONTHLY} ]]; then
|
||||
TAG_MONTH="$(echo $TAG | cut -d- -f3)"
|
||||
|
||||
if [[ ${TAG_MONTH} != ${CUR_MONTH} ]]; then
|
||||
CUR_MONTH="${TAG_MONTH}"
|
||||
MONTHLY_TAGS+=( "$TAG" )
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
for TAG in ${LATEST_TAGS[@]} ${MONTHLY_TAGS[@]}; do
|
||||
TAGS=( "${TAGS[@]/$TAG}" )
|
||||
done
|
||||
|
||||
for TAG in ${TAGS[@]}; do
|
||||
echo "Deleting ${TAG}"
|
||||
hub release delete "${TAG}"
|
||||
git tag -d "${TAG}"
|
||||
done
|
||||
|
||||
git push --tags --prune
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user