...
This commit is contained in:
+33
@@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_SYSTEM_NAME=Generic \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_CXX_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CXX" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=$(get_cmake_system_processor) \
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
|
||||
-DFFT_LIB=kissfft \
|
||||
-DKISSFFT_SOURCE_DIR="${BASEDIR}"/src/"${LIB_NAME}"/src/3rdparty/kissfft \
|
||||
-DBUILD_SHARED_LIBS=0 \
|
||||
-DBUILD_TESTS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_chromaprint_package_config "1.5.1" || return 1
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
$(android_ndk_cmake) || return 1
|
||||
|
||||
make -C "$(get_cmake_build_directory)" || return 1
|
||||
|
||||
make -C "$(get_cmake_build_directory)" install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_cpufeatures_package_config "0.8.0" || return 1
|
||||
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD FLAGS
|
||||
CROSS_FILE="${BASEDIR}"/src/"${LIB_NAME}"/package/crossfiles/$ARCH-$FFMPEG_KIT_BUILD_TYPE.meson
|
||||
|
||||
create_mason_cross_file "$CROSS_FILE" || return 1
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
rm -rf "${BUILD_DIR}" || return 1
|
||||
|
||||
# ENABLING LTO CAUSES SYMBOL NOT FOUND ERRORS ON NDKS >= 23b
|
||||
meson "${BUILD_DIR}" \
|
||||
--cross-file="$CROSS_FILE" \
|
||||
-Db_lto=false \
|
||||
-Db_ndebug=false \
|
||||
-Denable_asm=false \
|
||||
-Denable_tools=false \
|
||||
-Denable_examples=false \
|
||||
-Denable_tests=false || return 1
|
||||
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
ninja -j$(get_cpu_count) || return 1
|
||||
|
||||
ninja install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp "${BUILD_DIR}"/meson-private/dav1d.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "${LIB_NAME}" || return 1
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/"${LIB_NAME}"/configure ]] || [[ ${RECONF_expat} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--without-docbook \
|
||||
--without-xmlwf \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./expat.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+543
@@ -0,0 +1,543 @@
|
||||
#!/bin/bash
|
||||
|
||||
HOST_PKG_CONFIG_PATH=$(command -v pkg-config)
|
||||
if [ -z "${HOST_PKG_CONFIG_PATH}" ]; then
|
||||
echo -e "\n(*) pkg-config command not found\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LIB_NAME="ffmpeg"
|
||||
|
||||
echo -e "----------------------------------------------------------------" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "\nINFO: Building ${LIB_NAME} for ${HOST} with the following environment variables\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
env 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "----------------------------------------------------------------\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "INFO: System information\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "INFO: $(uname -a)\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "----------------------------------------------------------------\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
FFMPEG_LIBRARY_PATH="${LIB_INSTALL_BASE}/${LIB_NAME}"
|
||||
ANDROID_SYSROOT="${ANDROID_NDK_ROOT}"/toolchains/llvm/prebuilt/"${TOOLCHAIN}"/sysroot
|
||||
|
||||
# SET PATHS
|
||||
set_toolchain_paths "${LIB_NAME}"
|
||||
|
||||
# SET BUILD FLAGS
|
||||
HOST=$(get_host)
|
||||
export CFLAGS=$(get_cflags "${LIB_NAME}")
|
||||
export CXXFLAGS=$(get_cxxflags "${LIB_NAME}")
|
||||
export LDFLAGS=$(get_ldflags "${LIB_NAME}")
|
||||
export PKG_CONFIG_LIBDIR="${INSTALL_PKG_CONFIG_DIR}"
|
||||
|
||||
cd "${BASEDIR}"/src/"${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
TARGET_CPU=""
|
||||
TARGET_ARCH=""
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a)
|
||||
TARGET_CPU="armv7-a"
|
||||
TARGET_ARCH="armv7-a"
|
||||
ASM_OPTIONS=" --disable-neon --enable-asm --enable-inline-asm"
|
||||
;;
|
||||
arm-v7a-neon)
|
||||
TARGET_CPU="armv7-a"
|
||||
TARGET_ARCH="armv7-a"
|
||||
ASM_OPTIONS=" --enable-neon --enable-asm --enable-inline-asm --build-suffix=_neon"
|
||||
;;
|
||||
arm64-v8a)
|
||||
TARGET_CPU="armv8-a"
|
||||
TARGET_ARCH="aarch64"
|
||||
ASM_OPTIONS=" --enable-neon --enable-asm --enable-inline-asm"
|
||||
;;
|
||||
x86)
|
||||
TARGET_CPU="i686"
|
||||
TARGET_ARCH="i686"
|
||||
|
||||
# asm disabled due to this ticket https://trac.ffmpeg.org/ticket/4928
|
||||
ASM_OPTIONS=" --disable-neon --disable-asm --disable-inline-asm"
|
||||
;;
|
||||
x86-64)
|
||||
TARGET_CPU="x86_64"
|
||||
TARGET_ARCH="x86_64"
|
||||
ASM_OPTIONS=" --disable-neon --enable-asm --enable-inline-asm"
|
||||
;;
|
||||
esac
|
||||
|
||||
CONFIGURE_POSTFIX=""
|
||||
HIGH_PRIORITY_INCLUDES=""
|
||||
|
||||
# SET CONFIGURE OPTIONS
|
||||
for library in {0..61}; do
|
||||
if [[ ${ENABLED_LIBRARIES[$library]} -eq 1 ]]; then
|
||||
ENABLED_LIBRARY=$(get_library_name ${library})
|
||||
|
||||
echo -e "INFO: Enabling library ${ENABLED_LIBRARY}\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
case ${ENABLED_LIBRARY} in
|
||||
chromaprint)
|
||||
CFLAGS+=" $(pkg-config --cflags libchromaprint 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static libchromaprint 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-chromaprint"
|
||||
;;
|
||||
cpu-features)
|
||||
pkg-config --libs --static cpu-features 2>>"${BASEDIR}"/build.log 1>/dev/null
|
||||
if [[ $? -eq 1 ]]; then
|
||||
echo -e "ERROR: cpu-features was not found in the pkg-config search path\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "\nffmpeg: failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
dav1d)
|
||||
CFLAGS+=" $(pkg-config --cflags dav1d 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static dav1d 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libdav1d"
|
||||
;;
|
||||
fontconfig)
|
||||
CFLAGS+=" $(pkg-config --cflags fontconfig 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static fontconfig 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libfontconfig"
|
||||
;;
|
||||
freetype)
|
||||
CFLAGS+=" $(pkg-config --cflags freetype2 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static freetype2 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libfreetype"
|
||||
;;
|
||||
fribidi)
|
||||
CFLAGS+=" $(pkg-config --cflags fribidi 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static fribidi 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libfribidi"
|
||||
;;
|
||||
gmp)
|
||||
CFLAGS+=" $(pkg-config --cflags gmp 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static gmp 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-gmp"
|
||||
;;
|
||||
gnutls)
|
||||
CFLAGS+=" $(pkg-config --cflags gnutls 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static gnutls 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-gnutls"
|
||||
;;
|
||||
kvazaar)
|
||||
CFLAGS+=" $(pkg-config --cflags kvazaar 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static kvazaar 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libkvazaar"
|
||||
;;
|
||||
lame)
|
||||
CFLAGS+=" $(pkg-config --cflags libmp3lame 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static libmp3lame 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libmp3lame"
|
||||
;;
|
||||
libaom)
|
||||
CFLAGS+=" $(pkg-config --cflags aom 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static aom 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libaom"
|
||||
;;
|
||||
libass)
|
||||
CFLAGS+=" $(pkg-config --cflags libass 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static libass 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libass"
|
||||
;;
|
||||
libiconv)
|
||||
CFLAGS+=" $(pkg-config --cflags libiconv 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static libiconv 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-iconv"
|
||||
HIGH_PRIORITY_INCLUDES+=" $(pkg-config --cflags libiconv 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
libilbc)
|
||||
CFLAGS+=" $(pkg-config --cflags libilbc 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static libilbc 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libilbc"
|
||||
;;
|
||||
libtheora)
|
||||
CFLAGS+=" $(pkg-config --cflags theora 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static theora 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libtheora"
|
||||
;;
|
||||
libvidstab)
|
||||
CFLAGS+=" $(pkg-config --cflags vidstab 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static vidstab 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libvidstab"
|
||||
;;
|
||||
libvorbis)
|
||||
CFLAGS+=" $(pkg-config --cflags vorbis 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static vorbis 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libvorbis"
|
||||
;;
|
||||
libvpx)
|
||||
CFLAGS+=" $(pkg-config --cflags vpx 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs vpx 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs cpu-features 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libvpx"
|
||||
;;
|
||||
libwebp)
|
||||
CFLAGS+=" $(pkg-config --cflags libwebp 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static libwebp 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libwebp"
|
||||
;;
|
||||
libxml2)
|
||||
CFLAGS+=" $(pkg-config --cflags libxml-2.0 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static libxml-2.0 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libxml2"
|
||||
;;
|
||||
opencore-amr)
|
||||
CFLAGS+=" $(pkg-config --cflags opencore-amrnb 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static opencore-amrnb 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libopencore-amrnb"
|
||||
;;
|
||||
openh264)
|
||||
CFLAGS+=" $(pkg-config --cflags openh264 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static openh264 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libopenh264"
|
||||
;;
|
||||
openssl)
|
||||
CFLAGS+=" $(pkg-config --cflags openssl 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static openssl 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-openssl"
|
||||
;;
|
||||
opus)
|
||||
CFLAGS+=" $(pkg-config --cflags opus 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static opus 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libopus"
|
||||
;;
|
||||
rubberband)
|
||||
CFLAGS+=" $(pkg-config --cflags rubberband 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static rubberband 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-librubberband"
|
||||
;;
|
||||
sdl)
|
||||
CFLAGS+=" $(pkg-config --cflags sdl2 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static sdl2 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-sdl2"
|
||||
;;
|
||||
shine)
|
||||
CFLAGS+=" $(pkg-config --cflags shine 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static shine 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libshine"
|
||||
;;
|
||||
snappy)
|
||||
CFLAGS+=" $(pkg-config --cflags snappy 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static snappy 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libsnappy"
|
||||
;;
|
||||
soxr)
|
||||
CFLAGS+=" $(pkg-config --cflags soxr 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static soxr 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libsoxr"
|
||||
;;
|
||||
speex)
|
||||
CFLAGS+=" $(pkg-config --cflags speex 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static speex 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libspeex"
|
||||
;;
|
||||
srt)
|
||||
CFLAGS+=" $(pkg-config --cflags srt 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static srt 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libsrt"
|
||||
;;
|
||||
tesseract)
|
||||
CFLAGS+=" $(pkg-config --cflags tesseract 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static tesseract 2>>"${BASEDIR}"/build.log)"
|
||||
CFLAGS+=" $(pkg-config --cflags giflib 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static giflib 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libtesseract"
|
||||
;;
|
||||
twolame)
|
||||
CFLAGS+=" $(pkg-config --cflags twolame 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static twolame 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libtwolame"
|
||||
;;
|
||||
vo-amrwbenc)
|
||||
CFLAGS+=" $(pkg-config --cflags vo-amrwbenc 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static vo-amrwbenc 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libvo-amrwbenc"
|
||||
;;
|
||||
x264)
|
||||
CFLAGS+=" $(pkg-config --cflags x264 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static x264 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libx264"
|
||||
;;
|
||||
x265)
|
||||
CFLAGS+=" $(pkg-config --cflags x265 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static x265 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libx265"
|
||||
;;
|
||||
xvidcore)
|
||||
CFLAGS+=" $(pkg-config --cflags xvidcore 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static xvidcore 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libxvid"
|
||||
;;
|
||||
zimg)
|
||||
CFLAGS+=" $(pkg-config --cflags zimg 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static zimg 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libzimg"
|
||||
;;
|
||||
expat)
|
||||
CFLAGS+=" $(pkg-config --cflags expat 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static expat 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
libogg)
|
||||
CFLAGS+=" $(pkg-config --cflags ogg 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static ogg 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
libpng)
|
||||
CFLAGS+=" $(pkg-config --cflags libpng 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static libpng 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
libuuid)
|
||||
CFLAGS+=" $(pkg-config --cflags uuid 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static uuid 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
nettle)
|
||||
CFLAGS+=" $(pkg-config --cflags nettle 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static nettle 2>>"${BASEDIR}"/build.log)"
|
||||
CFLAGS+=" $(pkg-config --cflags hogweed 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static hogweed 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
android-zlib)
|
||||
CFLAGS+=" $(pkg-config --cflags zlib 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static zlib 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-zlib"
|
||||
;;
|
||||
android-media-codec)
|
||||
CONFIGURE_POSTFIX+=" --enable-mediacodec"
|
||||
;;
|
||||
esac
|
||||
else
|
||||
|
||||
# THE FOLLOWING LIBRARIES SHOULD BE EXPLICITLY DISABLED TO PREVENT AUTODETECT
|
||||
# NOTE THAT IDS MUST BE +1 OF THE INDEX VALUE
|
||||
if [[ ${library} -eq ${LIBRARY_SDL} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-sdl2"
|
||||
elif [[ ${library} -eq ${LIBRARY_SYSTEM_ZLIB} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-zlib"
|
||||
elif [[ ${library} -eq ${LIBRARY_ANDROID_MEDIA_CODEC} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-mediacodec"
|
||||
elif [[ ${library} -eq ${LIBRARY_OPENSSL} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-openssl"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# SET CONFIGURE OPTIONS FOR CUSTOM LIBRARIES
|
||||
for custom_library_index in "${CUSTOM_LIBRARIES[@]}"; do
|
||||
library_name="CUSTOM_LIBRARY_${custom_library_index}_NAME"
|
||||
pc_file_name="CUSTOM_LIBRARY_${custom_library_index}_PACKAGE_CONFIG_FILE_NAME"
|
||||
ffmpeg_flag_name="CUSTOM_LIBRARY_${custom_library_index}_FFMPEG_ENABLE_FLAG"
|
||||
|
||||
echo -e "INFO: Enabling custom library ${!library_name}\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
CFLAGS+=" $(pkg-config --cflags ${!pc_file_name} 2>>"${BASEDIR}"/build.log)"
|
||||
LDFLAGS+=" $(pkg-config --libs --static ${!pc_file_name} 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-${!ffmpeg_flag_name}"
|
||||
done
|
||||
|
||||
# SET ENABLE GPL FLAG WHEN REQUESTED
|
||||
if [ "$GPL_ENABLED" == "yes" ]; then
|
||||
CONFIGURE_POSTFIX+=" --enable-gpl"
|
||||
fi
|
||||
|
||||
export LDFLAGS+=" -L${ANDROID_NDK_ROOT}/platforms/android-${API}/arch-${TOOLCHAIN_ARCH}/usr/lib"
|
||||
|
||||
# LINKING WITH ANDROID LTS SUPPORT LIBRARY IS NECESSARY FOR API < 18
|
||||
if [[ -n ${FFMPEG_KIT_LTS_BUILD} ]] && [[ ${API} -lt 18 ]]; then
|
||||
export LDFLAGS+=" -Wl,--whole-archive ${BASEDIR}/android/ffmpeg-kit-android-lib/src/main/cpp/libandroidltssupport.a -Wl,--no-whole-archive"
|
||||
fi
|
||||
|
||||
# ALWAYS BUILD SHARED LIBRARIES
|
||||
BUILD_LIBRARY_OPTIONS="--disable-static --enable-shared"
|
||||
|
||||
# OPTIMIZE FOR SPEED INSTEAD OF SIZE
|
||||
if [[ -z ${FFMPEG_KIT_OPTIMIZED_FOR_SPEED} ]]; then
|
||||
SIZE_OPTIONS="--enable-small"
|
||||
else
|
||||
SIZE_OPTIONS=""
|
||||
fi
|
||||
|
||||
# SET DEBUG OPTIONS
|
||||
if [[ -z ${FFMPEG_KIT_DEBUG} ]]; then
|
||||
|
||||
# SET LTO FLAGS
|
||||
if [[ -z ${NO_LINK_TIME_OPTIMIZATION} ]]; then
|
||||
DEBUG_OPTIONS="--disable-debug --enable-lto"
|
||||
else
|
||||
DEBUG_OPTIONS="--disable-debug --disable-lto"
|
||||
fi
|
||||
else
|
||||
DEBUG_OPTIONS="--enable-debug --disable-stripping"
|
||||
fi
|
||||
|
||||
echo -n -e "\n${LIB_NAME}: "
|
||||
|
||||
if [[ -z ${NO_WORKSPACE_CLEANUP_ffmpeg} ]]; then
|
||||
echo -e "INFO: Cleaning workspace for ${LIB_NAME}\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUND TO MANUALLY DELETE UNCLEANED FILES
|
||||
rm -f "${BASEDIR}"/src/"${LIB_NAME}"/libavfilter/opencl/*.o 1>>"${BASEDIR}"/build.log 2>&1
|
||||
rm -f "${BASEDIR}"/src/"${LIB_NAME}"/libavcodec/neon/*.o 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# DELETE SHARED FRAMEWORK WORKAROUNDS
|
||||
git checkout "${BASEDIR}/src/ffmpeg/ffbuild" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
fi
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS="${HIGH_PRIORITY_INCLUDES} ${CFLAGS}"
|
||||
|
||||
# USE HIGHER LIMITS FOR FFMPEG LINKING
|
||||
ulimit -n 2048 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
########################### CUSTOMIZATIONS #######################
|
||||
cd "${BASEDIR}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
git checkout android/ffmpeg-kit-android-lib/src/main/cpp/ffmpegkit.c 1>>"${BASEDIR}"/build.log 2>&1
|
||||
cd "${BASEDIR}"/src/"${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
git checkout libavformat/file.c 1>>"${BASEDIR}"/build.log 2>&1
|
||||
git checkout libavformat/protocols.c 1>>"${BASEDIR}"/build.log 2>&1
|
||||
git checkout libavutil 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# 1. Use thread local log levels
|
||||
${SED_INLINE} 's/static int av_log_level/__thread int av_log_level/g' "${BASEDIR}"/src/"${LIB_NAME}"/libavutil/log.c 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# 2. Enable ffmpeg-kit protocols
|
||||
if [[ ${NO_FFMPEG_KIT_PROTOCOLS} == "1" ]]; then
|
||||
${SED_INLINE} "s| av_set_saf|//av_set_saf|g" "${BASEDIR}"/android/ffmpeg-kit-android-lib/src/main/cpp/ffmpegkit.c 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "\nINFO: Disabled custom ffmpeg-kit protocols\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
else
|
||||
cat ../../tools/protocols/libavformat_file.c >> libavformat/file.c
|
||||
cat ../../tools/protocols/libavutil_file.h >> libavutil/file.h
|
||||
cat ../../tools/protocols/libavutil_file.c >> libavutil/file.c
|
||||
awk '{gsub(/ff_file_protocol;/,"ff_file_protocol;\nextern const URLProtocol ff_saf_protocol;")}1' libavformat/protocols.c > libavformat/protocols.c.tmp
|
||||
cat libavformat/protocols.c.tmp > libavformat/protocols.c
|
||||
echo -e "\nINFO: Enabled custom ffmpeg-kit protocols\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
fi
|
||||
|
||||
###################################################################
|
||||
|
||||
./configure \
|
||||
--cross-prefix="${HOST}-" \
|
||||
--sysroot="${ANDROID_SYSROOT}" \
|
||||
--prefix="${FFMPEG_LIBRARY_PATH}" \
|
||||
--pkg-config="${HOST_PKG_CONFIG_PATH}" \
|
||||
--enable-version3 \
|
||||
--arch="${TARGET_ARCH}" \
|
||||
--cpu="${TARGET_CPU}" \
|
||||
--target-os=android \
|
||||
${ASM_OPTIONS} \
|
||||
--ar="${AR}" \
|
||||
--cc="${CC}" \
|
||||
--cxx="${CXX}" \
|
||||
--ranlib="${RANLIB}" \
|
||||
--strip="${STRIP}" \
|
||||
--nm="${NM}" \
|
||||
--extra-libs="$(pkg-config --libs --static cpu-features)" \
|
||||
--disable-autodetect \
|
||||
--enable-cross-compile \
|
||||
--enable-pic \
|
||||
--enable-jni \
|
||||
--enable-optimizations \
|
||||
--enable-swscale \
|
||||
${BUILD_LIBRARY_OPTIONS} \
|
||||
--enable-pthreads \
|
||||
--enable-v4l2-m2m \
|
||||
--disable-outdev=fbdev \
|
||||
--disable-indev=fbdev \
|
||||
${SIZE_OPTIONS} \
|
||||
--disable-xmm-clobber-test \
|
||||
${DEBUG_OPTIONS} \
|
||||
--disable-neon-clobber-test \
|
||||
--disable-programs \
|
||||
--disable-postproc \
|
||||
--disable-doc \
|
||||
--disable-htmlpages \
|
||||
--disable-manpages \
|
||||
--disable-podpages \
|
||||
--disable-txtpages \
|
||||
--disable-sndio \
|
||||
--disable-schannel \
|
||||
--disable-securetransport \
|
||||
--disable-xlib \
|
||||
--disable-cuda \
|
||||
--disable-cuvid \
|
||||
--disable-nvenc \
|
||||
--disable-vaapi \
|
||||
--disable-vdpau \
|
||||
--disable-videotoolbox \
|
||||
--disable-audiotoolbox \
|
||||
--disable-appkit \
|
||||
--disable-alsa \
|
||||
--disable-cuda \
|
||||
--disable-cuvid \
|
||||
--disable-nvenc \
|
||||
--disable-vaapi \
|
||||
--disable-vdpau \
|
||||
${CONFIGURE_POSTFIX} 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ -z ${NO_OUTPUT_REDIRECTION} ]]; then
|
||||
make -j$(get_cpu_count) 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo -e "started\n"
|
||||
make -j$(get_cpu_count)
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo -n -e "\n${LIB_NAME}: failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
else
|
||||
echo -n -e "\n${LIB_NAME}: "
|
||||
fi
|
||||
fi
|
||||
|
||||
# DELETE THE PREVIOUS BUILD OF THE LIBRARY BEFORE INSTALLING
|
||||
if [ -d "${FFMPEG_LIBRARY_PATH}" ]; then
|
||||
rm -rf "${FFMPEG_LIBRARY_PATH}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
make install 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# MANUALLY ADD REQUIRED HEADERS
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavutil/x86 1>>"${BASEDIR}"/build.log 2>&1
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavutil/arm 1>>"${BASEDIR}"/build.log 2>&1
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavutil/aarch64 1>>"${BASEDIR}"/build.log 2>&1
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/x86 1>>"${BASEDIR}"/build.log 2>&1
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/arm 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/config.h "${FFMPEG_LIBRARY_PATH}"/include/config.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavcodec/mathops.h "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/mathops.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavcodec/x86/mathops.h "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/x86/mathops.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavcodec/arm/mathops.h "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/arm/mathops.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavformat/network.h "${FFMPEG_LIBRARY_PATH}"/include/libavformat/network.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavformat/os_support.h "${FFMPEG_LIBRARY_PATH}"/include/libavformat/os_support.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavformat/url.h "${FFMPEG_LIBRARY_PATH}"/include/libavformat/url.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/attributes_internal.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/attributes_internal.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/bprint.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/bprint.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/getenv_utf8.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/getenv_utf8.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/internal.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/internal.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/libm.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/libm.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/reverse.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/reverse.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/thread.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/thread.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/timer.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/timer.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/x86/asm.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/x86/asm.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/x86/timer.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/x86/timer.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/arm/timer.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/arm/timer.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/aarch64/timer.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/aarch64/timer.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/x86/emms.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/x86/emms.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "ok"
|
||||
else
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUND FOR "bad flag in substitute command"
|
||||
${SED_INLINE} "s|in \"\$default_fonts\"|in \$default_fonts|g" "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_fontconfig} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
# WORKAROUND TO FIX NOT-APPLIED HAVE_POSIX_FADVISE define ON MACOS
|
||||
if [[ -n ${FFMPEG_KIT_LTS_BUILD} ]]; then
|
||||
${SED_INLINE} "s/(HAVE_POSIX_FADVISE)/(NO_HAVE_POSIX_FADVISE)/g" "${BASEDIR}"/src/"${LIB_NAME}"/src/fccache.c 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
else
|
||||
${SED_INLINE} "s/NO_HAVE_POSIX_FADVISE/HAVE_POSIX_FADVISE/g" "${BASEDIR}"/src/"${LIB_NAME}"/src/fccache.c 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-libiconv-prefix="${LIB_INSTALL_BASE}"/libiconv \
|
||||
--with-expat="${LIB_INSTALL_BASE}"/expat \
|
||||
--without-libintl-prefix \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-rpath \
|
||||
--disable-libxml2 \
|
||||
--disable-docs \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_fontconfig_package_config "2.14.2" || return 1
|
||||
Executable
+40
@@ -0,0 +1,40 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export LIBPNG_CFLAGS="-I${LIB_INSTALL_BASE}/libpng/include"
|
||||
export LIBPNG_LIBS="-L${LIB_INSTALL_BASE}/libpng/lib"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/builds/unix/configure ]] || [[ ${RECONF_freetype} -eq 1 ]]; then
|
||||
|
||||
# NOTE THAT FREETYPE DOES NOT SUPPORT AUTORECONF BUT IT COMES WITH AN autogen.sh
|
||||
./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-zlib \
|
||||
--with-png \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--without-harfbuzz \
|
||||
--without-bzip2 \
|
||||
--without-fsref \
|
||||
--without-quickdraw-toolbox \
|
||||
--without-quickdraw-carbon \
|
||||
--without-ats \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-mmap \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_freetype_package_config "25.0.19" || return 1
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_fribidi} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-debug \
|
||||
--disable-deprecated \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# WORKAROUND TO DISABLE BUILDING OF doc FOLDER (doc depends on c2man which is not available on all platforms)
|
||||
${SED_INLINE} 's/ doc / /g' "${BASEDIR}"/src/"${LIB_NAME}"/Makefile || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+31
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS=$(get_cflags "${LIB_NAME}")" -DS_IREAD=S_IRUSR -DS_IWRITE=S_IWUSR"
|
||||
|
||||
# COPY BUILD FILES
|
||||
cp "${BASEDIR}"/tools/patch/make/giflib/* "${BASEDIR}"/src/"${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_giflib} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_giflib_package_config "5.2.1" || return 1
|
||||
Executable
+27
@@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_gmp} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-assembly \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_gmp_package_config "6.2.1" || return 1
|
||||
Executable
+75
@@ -0,0 +1,75 @@
|
||||
#!/bin/bash
|
||||
|
||||
# INIT SUBMODULES
|
||||
${SED_INLINE} 's|openssl/openssl|arthenica/openssl|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|tomato42|arthenica|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|warner|arthenica|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/libidn/gnulib-mirror|github.com/arthenica/gnulib|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/gnutls/libtasn1|github.com/arthenica/libtasn1|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/gnutls/nettle|github.com/arthenica/nettle|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/gnutls/abi-dump|github.com/arthenica/abi-dump|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/gnutls/cligen|github.com/arthenica/cligen|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/redhat-crypto/tests/interop|github.com/arthenica/redhat-crypto-tests-interop|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS="$(get_cflags ${LIB_NAME}) -I${LIB_INSTALL_BASE}/libiconv/include"
|
||||
export CXXFLAGS=$(get_cxxflags "${LIB_NAME}")
|
||||
export LDFLAGS="$(get_ldflags ${LIB_NAME}) -L${LIB_INSTALL_BASE}/libiconv/lib"
|
||||
|
||||
export NETTLE_CFLAGS="-I${LIB_INSTALL_BASE}/nettle/include"
|
||||
export NETTLE_LIBS="-L${LIB_INSTALL_BASE}/nettle/lib -lnettle -L${LIB_INSTALL_BASE}/gmp/lib -lgmp"
|
||||
export HOGWEED_CFLAGS="-I${LIB_INSTALL_BASE}/nettle/include"
|
||||
export HOGWEED_LIBS="-L${LIB_INSTALL_BASE}/nettle/lib -lhogweed -L${LIB_INSTALL_BASE}/gmp/lib -lgmp"
|
||||
export GMP_CFLAGS="-I${LIB_INSTALL_BASE}/gmp/include"
|
||||
export GMP_LIBS="-L${LIB_INSTALL_BASE}/gmp/lib -lgmp"
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
x86)
|
||||
ASM_OPTIONS="--disable-hardware-acceleration"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS="--enable-hardware-acceleration"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_gnutls} -eq 1 ]]; then
|
||||
./bootstrap --skip-po || return 1
|
||||
git submodule update --remote gnulib || return 1
|
||||
overwrite_file ./gnulib/lib/fpending.c ./src/gl/fpending.c || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--with-included-libtasn1 \
|
||||
--with-included-unistring \
|
||||
--without-idn \
|
||||
--without-p11-kit \
|
||||
${ASM_OPTIONS} \
|
||||
--enable-static \
|
||||
--disable-openssl-compatibility \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-code-coverage \
|
||||
--disable-doc \
|
||||
--disable-manpages \
|
||||
--disable-guile \
|
||||
--disable-tests \
|
||||
--disable-tools \
|
||||
--disable-maintainer-mode \
|
||||
--disable-full-test-suite \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_gnutls_package_config "3.7.9" || return 1
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_harfbuzz} -eq 1 ]]; then
|
||||
NOCONFIGURE=1 ./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--with-glib=no \
|
||||
--with-freetype=yes \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./src/harfbuzz.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
|
||||
# WORKAROUND TO REMOVE INSTALLED .la FILES
|
||||
rm -f "${LIB_INSTALL_PREFIX}"/lib/*.la
|
||||
Executable
+36
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_SYSTEM_NAME=Generic \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_CXX_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CXX" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
|
||||
-DENABLE_STATIC=1 \
|
||||
-DENABLE_SHARED=0 \
|
||||
-DWITH_JPEG8=1 \
|
||||
-DWITH_SIMD=1 \
|
||||
-DWITH_TURBOJPEG=0 \
|
||||
-DWITH_JAVA=0 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=$(get_cmake_system_processor) \
|
||||
"${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp "${BUILD_DIR}"/pkgscripts/libjpeg.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_kvazaar} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
# LINKING WITH ANDROID LTS SUPPORT LIBRARY IS NECESSARY FOR API < 18
|
||||
if [[ -n ${FFMPEG_KIT_LTS_BUILD} ]] && [[ ${API} -lt 18 ]]; then
|
||||
LTS_SUPPORT_LIBS=" -Wl,--no-whole-archive ${BASEDIR}/android/ffmpeg-kit-android-lib/src/main/cpp/libandroidltssupport.a -Wl,--no-whole-archive"
|
||||
else
|
||||
LTS_SUPPORT_LIBS=""
|
||||
fi
|
||||
|
||||
# WORKAROUND TO DISABLE LINKING TO -lrt
|
||||
${SED_INLINE} 's/\-lrt//g' "${BASEDIR}"/src/"${LIB_NAME}"/configure || return 1
|
||||
|
||||
LIBS="${LTS_SUPPORT_LIBS}" ./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# NOTE THAT kvazaar DOES NOT SUPPORT PARALLEL EXECUTION
|
||||
make || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./src/kvazaar.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "${LIB_NAME}" || return 1
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_lame} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--with-libiconv-prefix="${LIB_INSTALL_BASE}"/libiconv \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--disable-frontend \
|
||||
--disable-efence \
|
||||
--disable-gtktest \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libmp3lame_package_config "3.100" || return 1
|
||||
Executable
+49
@@ -0,0 +1,49 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
HOST=$(get_host)
|
||||
export CFLAGS=$(get_cflags "${LIB_NAME}")
|
||||
export CXXFLAGS=$(get_cxxflags "${LIB_NAME}")
|
||||
export CPPFLAGS="-I${LIB_INSTALL_BASE}/giflib/include"
|
||||
export LDFLAGS="$(get_ldflags "${LIB_NAME}") -L${LIB_INSTALL_BASE}/giflib/lib -lgif"
|
||||
|
||||
export LIBPNG_CFLAGS="$(pkg-config --cflags libpng)"
|
||||
export LIBPNG_LIBS="$(pkg-config --libs --static libpng)"
|
||||
export LIBWEBP_CFLAGS="$(pkg-config --cflags libwebp)"
|
||||
export LIBWEBP_LIBS="$(pkg-config --libs --static libwebp)"
|
||||
export LIBTIFF_CFLAGS="$(pkg-config --cflags libtiff-4)"
|
||||
export LIBTIFF_LIBS="$(pkg-config --libs --static libtiff-4)"
|
||||
export ZLIB_CFLAGS="$(pkg-config --cflags zlib)"
|
||||
export ZLIB_LIBS="$(pkg-config --libs --static zlib)"
|
||||
export JPEG_CFLAGS="$(pkg-config --cflags libjpeg)"
|
||||
export JPEG_LIBS="$(pkg-config --libs --static libjpeg)"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_leptonica} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-zlib \
|
||||
--with-libpng \
|
||||
--with-jpeg \
|
||||
--with-giflib \
|
||||
--with-libtiff \
|
||||
--with-libwebp \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-programs \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp lept.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+59
@@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
|
||||
# DISABLE ASM WORKAROUNDS BEFORE APPLYING THEM AGAIN
|
||||
git checkout ${BASEDIR}/src/${LIB_NAME}/aom_ports 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a)
|
||||
ASM_OPTIONS="-DARCH_ARM=1 -DENABLE_NEON=0 -DHAVE_NEON=0"
|
||||
;;
|
||||
arm-v7a-neon)
|
||||
ASM_OPTIONS="-DARCH_ARM=1 -DENABLE_NEON=1 -DHAVE_NEON=1"
|
||||
;;
|
||||
arm64-v8a)
|
||||
ASM_OPTIONS="-DARCH_ARM=1 -DENABLE_NEON=1 -DHAVE_NEON=1"
|
||||
;;
|
||||
x86)
|
||||
ASM_OPTIONS="-DENABLE_SSE=1 -DHAVE_SSE=1 -DENABLE_SSE3=1 -DHAVE_SSE3=1"
|
||||
;;
|
||||
x86-64)
|
||||
ASM_OPTIONS="-DENABLE_SSE4_2=1 -DHAVE_SSE4_2=1"
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCONFIG_PIC=1 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_SYSTEM_NAME=Generic \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_CXX_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CXX" \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
|
||||
${ASM_OPTIONS} \
|
||||
-DENABLE_TESTS=0 \
|
||||
-DENABLE_EXAMPLES=0 \
|
||||
-DENABLE_TOOLS=0 \
|
||||
-DCONFIG_UNIT_TESTS=0 \
|
||||
-DAOM_TARGET_CPU=generic \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libaom_package_config "3.6.1" || return 1
|
||||
Executable
+45
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm* | x86)
|
||||
|
||||
# please note that asm is disabled
|
||||
# enabling asm for x86 causes text relocations in libavfilter.so
|
||||
ASM_OPTIONS=" --disable-asm"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS=" --enable-asm"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libass} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--disable-libtool-lock \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-require-system-font-provider \
|
||||
--disable-fast-install \
|
||||
--disable-test \
|
||||
--disable-profile \
|
||||
--disable-coretext \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
# FIX HARD-CODED PATHS
|
||||
${SED_INLINE} 's|git://git.savannah.gnu.org|https://github.com/arthenica|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
ln -s -f $(which aclocal) ${BASEDIR}/.tmp/aclocal-1.16
|
||||
ln -s -f $(which automake) ${BASEDIR}/.tmp/automake-1.16
|
||||
PATH="${BASEDIR}/.tmp":$PATH
|
||||
|
||||
if [[ ! -d "${BASEDIR}"/src/"${LIB_NAME}"/gnulib ]]; then
|
||||
|
||||
# INIT SUBMODULES
|
||||
./gitsub.sh pull || return 1
|
||||
./gitsub.sh checkout gnulib 485d983b7795548fb32b12fbe8370d40789e88c4 || return 1
|
||||
fi
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libiconv} -eq 1 ]]; then
|
||||
./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-rpath \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libiconv_package_config "1.17" || return 1
|
||||
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
# INIT SUBMODULES
|
||||
${SED_INLINE} 's|/abseil/|/arthenica/|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
git submodule update --init || return 1
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_SYSTEM_NAME=Generic \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_CXX_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CXX" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
|
||||
-DWEBRTC_ANDROID=1 \
|
||||
-DUNIX=1 \
|
||||
-DENABLE_STATIC=1 \
|
||||
-DENABLE_SHARED=0 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=$(get_cmake_system_processor) \
|
||||
"${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp "${BUILD_DIR}"/libilbc.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libogg} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ogg.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+45
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
x86 | x86-64)
|
||||
ASM_OPTIONS="--enable-hardware-optimizations --enable-intel-sse=yes"
|
||||
;;
|
||||
arm-v7a-neon | arm64-v8a)
|
||||
ASM_OPTIONS="--enable-hardware-optimizations --enable-arm-neon=yes"
|
||||
;;
|
||||
arm-v7a)
|
||||
# hardware-optimizations not enabled because
|
||||
# when --enable-hardware-optimizations is added
|
||||
# make tries to build arm-neon specific instructions, which breaks compilation
|
||||
ASM_OPTIONS="--enable-arm-neon=no"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libpng} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-unversioned-libpng-pc \
|
||||
--disable-unversioned-libpng-config \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libsamplerate} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-alsa \
|
||||
--disable-fftw \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# WORKAROUND TO DISABLE BUILDING OF EXAMPLES AND TESTS
|
||||
${SED_INLINE} 's/^examples_/#examples_/g' "${BASEDIR}"/src/"${LIB_NAME}"/Makefile || return 1
|
||||
${SED_INLINE} 's/^tests_/#tests_/g' "${BASEDIR}"/src/"${LIB_NAME}"/Makefile || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libsndfile} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-sqlite \
|
||||
--disable-alsa \
|
||||
--disable-full-suite \
|
||||
--disable-external-libs \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
if [[ -z ${FFMPEG_KIT_LTS_BUILD} ]]; then
|
||||
ASM_OPTIONS="--enable-asm"
|
||||
else
|
||||
ASM_OPTIONS="--disable-asm"
|
||||
fi
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libtheora} -eq 1 ]]; then
|
||||
|
||||
# WORKAROUND NOT TO RUN CONFIGURE AT THE END OF autogen.sh
|
||||
${SED_INLINE} 's/$srcdir\/configure/#$srcdir\/configure/g' "${BASEDIR}"/src/"${LIB_NAME}"/autogen.sh || return 1
|
||||
|
||||
./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-examples \
|
||||
--disable-telemetry \
|
||||
--disable-sdltest \
|
||||
${ASM_OPTIONS} \
|
||||
--disable-valgrind-testing \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp theoradec.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp theoraenc.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp theora.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libuuid} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_uuid_package_config "1.0.3" || return 1
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a | arm-v7a-neon | arm64-v8a)
|
||||
ASM_OPTIONS="-DSSE2_FOUND=0 -DSSE3_FOUND=0 -DSSSE3_FOUND=0 -DSSE4_1_FOUND=0"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS=""
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
# WORKAROUND TO DETECT ASM FLAGS PROPERLY
|
||||
${SED_INLINE} 's/ ${CPUINFO}/ "${CPUINFO}"/g' "${BASEDIR}"/src/"${LIB_NAME}"/CMakeModules/FindSSE.cmake 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_SYSTEM_NAME=Generic \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
|
||||
-DUSE_OMP=0 \
|
||||
${ASM_OPTIONS} \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=$(get_cmake_system_processor) \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp vidstab.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libvorbis} -eq 1 ]]; then
|
||||
|
||||
# -mno-ieee-fp OPTION IS NOT COMPATIBLE WITH clang. REMOVING IT
|
||||
${SED_INLINE} 's/\-mno-ieee-fp//g' "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac || return 1
|
||||
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
PKG_CONFIG= ./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--with-ogg-includes="${LIB_INSTALL_BASE}"/libogg/include \
|
||||
--with-ogg-libraries="${LIB_INSTALL_BASE}"/libogg/lib \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-docs \
|
||||
--disable-examples \
|
||||
--disable-oggtest \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libvorbis_package_config "1.3.7" || return 1
|
||||
Executable
+88
@@ -0,0 +1,88 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS="$(get_cflags "${LIB_NAME}") -I${LIB_INSTALL_BASE}/cpu-features/include/ndk_compat"
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
TARGET_CPU=""
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a)
|
||||
TARGET_CPU="armv7"
|
||||
|
||||
# NEON disabled explicitly because
|
||||
# --enable-runtime-cpu-detect enables NEON for armv7 cpu
|
||||
ASM_OPTIONS="--disable-neon"
|
||||
export ASFLAGS="-c"
|
||||
;;
|
||||
arm-v7a-neon)
|
||||
# NEON IS ENABLED BY --enable-runtime-cpu-detect
|
||||
TARGET_CPU="armv7"
|
||||
export ASFLAGS="-c"
|
||||
;;
|
||||
arm64-v8a)
|
||||
# NEON IS ENABLED BY --enable-runtime-cpu-detect
|
||||
TARGET_CPU="arm64"
|
||||
export ASFLAGS="-c"
|
||||
;;
|
||||
*)
|
||||
# INTEL CPU EXTENSIONS ENABLED BY --enable-runtime-cpu-detect
|
||||
TARGET_CPU="$(get_target_cpu)"
|
||||
export ASFLAGS="-D__ANDROID__"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# NOTE THAT RECONFIGURE IS NOT SUPPORTED
|
||||
|
||||
# WORKAROUND TO FIX BUILD OPTIONS DEFINED IN configure.sh
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/libvpx/configure.sh "${BASEDIR}"/src/"${LIB_NAME}"/build/make/configure.sh || return 1
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--target="${TARGET_CPU}-android-gcc" \
|
||||
--extra-cflags="${CFLAGS}" \
|
||||
--extra-cxxflags="${CXXFLAGS}" \
|
||||
--as=yasm \
|
||||
--log=yes \
|
||||
--enable-libs \
|
||||
--enable-install-libs \
|
||||
--enable-pic \
|
||||
--enable-optimizations \
|
||||
--enable-better-hw-compatibility \
|
||||
--enable-runtime-cpu-detect \
|
||||
--enable-vp9-highbitdepth \
|
||||
${ASM_OPTIONS} \
|
||||
--enable-vp8 \
|
||||
--enable-vp9 \
|
||||
--enable-multithread \
|
||||
--enable-spatial-resampling \
|
||||
--enable-small \
|
||||
--enable-static \
|
||||
--disable-realtime-only \
|
||||
--disable-shared \
|
||||
--disable-debug \
|
||||
--disable-gprof \
|
||||
--disable-gcov \
|
||||
--disable-ccache \
|
||||
--disable-install-bins \
|
||||
--disable-install-srcs \
|
||||
--disable-install-docs \
|
||||
--disable-docs \
|
||||
--disable-tools \
|
||||
--disable-examples \
|
||||
--disable-unit-tests \
|
||||
--disable-decode-perf-tests \
|
||||
--disable-encode-perf-tests \
|
||||
--disable-codec-srcs \
|
||||
--disable-debug-libs \
|
||||
--disable-internal-stats || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a)
|
||||
ASM_OPTIONS="--disable-neon --disable-neon-rtcd"
|
||||
;;
|
||||
arm-v7a-neon | arm64-v8a)
|
||||
ASM_OPTIONS="--enable-neon --enable-neon-rtcd"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS="--enable-sse2 --enable-sse4.1"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libwebp} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-dependency-tracking \
|
||||
--enable-libwebpmux \
|
||||
${ASM_OPTIONS} \
|
||||
--with-pngincludedir="${LIB_INSTALL_BASE}/libpng/include" \
|
||||
--with-pnglibdir="${LIB_INSTALL_BASE}/libpng/lib" \
|
||||
--with-jpegincludedir="${LIB_INSTALL_BASE}/jpeg/include" \
|
||||
--with-jpeglibdir="${LIB_INSTALL_BASE}/jpeg/lib" \
|
||||
--with-gifincludedir="${LIB_INSTALL_BASE}/giflib/include" \
|
||||
--with-giflibdir="${LIB_INSTALL_BASE}/giflib/lib" \
|
||||
--with-tiffincludedir="${LIB_INSTALL_BASE}/tiff/include" \
|
||||
--with-tifflibdir="${LIB_INSTALL_BASE}/tiff/lib" \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/src/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/src/demux/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/src/mux/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/sharpyuv/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
|
||||
make install || return 1
|
||||
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
# NOTE THAT PYTHON IS DISABLED DUE TO THE FOLLOWING ERROR
|
||||
#
|
||||
# .../include/python2.7/pyport.h:1029:2: error: #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)."
|
||||
# #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)."
|
||||
#
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libxml2} -eq 1 ]]; then
|
||||
${SED_INLINE} 's|^AC_PREREQ|#AC_PREREQ|g' "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac || return 1
|
||||
${SED_INLINE} 's|AM_INIT_AUTOMAKE(\[[0-9.]* |AM_INIT_AUTOMAKE(\[|g' "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac || return 1
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--with-zlib \
|
||||
--with-iconv="${LIB_INSTALL_BASE}/libiconv/lib" \
|
||||
--with-sax1 \
|
||||
--without-python \
|
||||
--without-debug \
|
||||
--without-lzma \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libxml2_package_config "2.11.4" || return 1
|
||||
Executable
+46
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a-neon | arm64-v8a)
|
||||
ASM_OPTIONS="--enable-arm-neon"
|
||||
;;
|
||||
x86 | x86-64)
|
||||
ASM_OPTIONS="--enable-x86-aesni"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_nettle} -eq 1 ]]; then
|
||||
|
||||
# WORKAROUND TO FIX BUILD SYSTEM COMPILER ON macOS
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/nettle/aclocal.m4 "${BASEDIR}"/src/"${LIB_NAME}"/aclocal.m4
|
||||
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--enable-pic \
|
||||
--enable-static \
|
||||
--with-include-path="${LIB_INSTALL_BASE}"/gmp/include \
|
||||
--with-lib-path="${LIB_INSTALL_BASE}"/gmp/lib \
|
||||
--disable-shared \
|
||||
--disable-mini-gmp \
|
||||
--disable-assembler \
|
||||
--disable-openssl \
|
||||
--disable-gcov \
|
||||
--disable-documentation \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_opencore_amr} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp amrnb/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+52
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS="$CFLAGS $(pkg-config --cflags libiconv) $(pkg-config --cflags cpu-features)"
|
||||
export LDFLAGS="$LDFLAGS $(pkg-config --libs --static libiconv) $(pkg-config --libs --static cpu-features)"
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
case ${ARCH} in
|
||||
arm-v7a-neon)
|
||||
ASM_OPTIONS=arm
|
||||
CFLAGS+=" -DHAVE_NEON -DANDROID_NDK"
|
||||
;;
|
||||
arm64-v8a)
|
||||
ASM_OPTIONS=arm64
|
||||
CFLAGS+=" -DHAVE_NEON_AARCH64 -DANDROID_NDK"
|
||||
;;
|
||||
x86*)
|
||||
ASM_OPTIONS=x86
|
||||
CFLAGS+=" -DHAVE_AVX2 -DANDROID_NDK"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make clean 2>/dev/null 1>/dev/null
|
||||
|
||||
# DISCARD APPLE WORKAROUNDS
|
||||
git checkout "${BASEDIR}"/src/"${LIB_NAME}"/build || return 1
|
||||
git checkout "${BASEDIR}"/src/"${LIB_NAME}"/codec || return 1
|
||||
|
||||
# WORKAROUND TO DISABLE PARTS THAT COMPILE cpu-features INTO libopenh264.a
|
||||
${SED_INLINE} 's/^COMMON_INCLUDES +=/# COMMON_INCLUDES +=/' "${BASEDIR}"/src/"${LIB_NAME}"/build/platform-android.mk
|
||||
${SED_INLINE} 's/^COMMON_OBJS +=/# COMMON_OBJS +=/' "${BASEDIR}"/src/"${LIB_NAME}"/build/platform-android.mk
|
||||
${SED_INLINE} 's/^COMMON_CFLAGS +=/# COMMON_CFLAGS +=/' "${BASEDIR}"/src/"${LIB_NAME}"/build/platform-android.mk
|
||||
|
||||
make -j$(get_cpu_count) \
|
||||
ARCH="$(get_toolchain_arch)" \
|
||||
CC="$CC" \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXX="$CXX" \
|
||||
CXXFLAGS="${CXXFLAGS}" \
|
||||
LDFLAGS="${LDFLAGS}" \
|
||||
OS=android \
|
||||
PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
NDKLEVEL="${API}" \
|
||||
NDKROOT="${ANDROID_NDK_ROOT}" \
|
||||
NDK_TOOLCHAIN_VERSION=clang \
|
||||
AR="$AR" \
|
||||
ASM_OPTIONS=${ASM_OPTIONS} \
|
||||
TARGET="android-${API}" install-static || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp "${BASEDIR}"/src/"${LIB_NAME}"/openh264-static.pc "${INSTALL_PKG_CONFIG_DIR}"/openh264.pc || return 1
|
||||
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ ${ARCH} == "x86" ]]; then
|
||||
|
||||
# openssl does not support 32-bit apple architectures
|
||||
echo -e "ERROR: openssl is not supported on $ARCH architecture for $FFMPEG_KIT_BUILD_TYPE platform.\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
return 200
|
||||
fi
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a | arm-v7a-neon)
|
||||
ASM_OPTIONS="linux-generic32"
|
||||
;;
|
||||
arm64-v8a)
|
||||
ASM_OPTIONS="linux-generic64 enable-ec_nistp_64_gcc_128"
|
||||
;;
|
||||
x86)
|
||||
ASM_OPTIONS="linux-generic32 386"
|
||||
;;
|
||||
x86-64)
|
||||
ASM_OPTIONS="linux-generic64 enable-ec_nistp_64_gcc_128"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_openssl} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
INT128_AVAILABLE=$($CC -dM -E - </dev/null 2>>"${BASEDIR}"/build.log | grep __SIZEOF_INT128__)
|
||||
|
||||
echo -e "INFO: __uint128_t detection output: $INT128_AVAILABLE\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
./Configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
zlib \
|
||||
no-shared \
|
||||
no-engine \
|
||||
no-dso \
|
||||
no-legacy \
|
||||
${ASM_OPTIONS} \
|
||||
no-tests || return 1
|
||||
|
||||
make -j$(get_cpu_count) build_sw || return 1
|
||||
|
||||
make install_sw install_ssldirs || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_opus} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--enable-rtcd \
|
||||
--enable-asm \
|
||||
--enable-check-asm \
|
||||
--enable-custom-modes \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--disable-doc \
|
||||
--disable-extra-programs \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./opus.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUND TO DISABLE OPTIONAL FEATURES MANUALLY, SINCE ./configure DOES NOT PROVIDE OPTIONS FOR THEM
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/rubberband/configure.ac "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac || return 1
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/rubberband/Makefile.android.in "${BASEDIR}"/src/"${LIB_NAME}"/Makefile.in || return 1
|
||||
|
||||
# WORKAROUND TO FIX PACKAGE CONFIG FILE DEPENDENCIES
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/rubberband/rubberband.pc.in "${BASEDIR}"/src/"${LIB_NAME}"/rubberband.pc.in || return 1
|
||||
${SED_INLINE} 's/%DEPENDENCIES%/sndfile, samplerate/g' "${BASEDIR}"/src/"${LIB_NAME}"/rubberband.pc.in || return 1
|
||||
|
||||
# ALWAYS REGENERATE BUILD FILES - NECESSARY TO APPLY THE WORKAROUNDS
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make AR="$AR" -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_sdl} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--without-x \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_shine} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_SYSTEM_NAME=Generic \
|
||||
-DCMAKE_CXX_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CXX" \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
|
||||
-DSNAPPY_BUILD_TESTS=0 \
|
||||
-DSNAPPY_BUILD_BENCHMARKS=0 \
|
||||
-DHAVE_LIBLZO2=0 \
|
||||
-DHAVE_LIBZ=1 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=$(get_cmake_system_processor) \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_snappy_package_config "1.1.9" || return 1
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_SYSTEM_NAME=Generic \
|
||||
-DCMAKE_CXX_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CXX" \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
|
||||
-DBUILD_TESTS=0 \
|
||||
-DWITH_DEV_TRACE=0 \
|
||||
-DWITH_LSR_BINDINGS=0 \
|
||||
-DWITH_OPENMP=0 \
|
||||
-DWITH_PFFFT=1 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=$(get_cmake_system_processor) \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_soxr_package_config "0.1.3" || return 1
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
x86 | x86-64)
|
||||
ASM_OPTIONS="--enable-sse"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_soxr} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
${ASM_OPTIONS} \
|
||||
--disable-shared \
|
||||
--disable-binaries \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
@@ -0,0 +1,62 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
git clean -dfx 2>/dev/null 1>/dev/null
|
||||
|
||||
# OVERRIDE SYSTEM PROCESSOR
|
||||
SYSTEM_PROCESSOR=""
|
||||
case ${ARCH} in
|
||||
arm-v7a | arm-v7a-neon)
|
||||
SYSTEM_PROCESSOR="armv7-a"
|
||||
;;
|
||||
arm64-v8a)
|
||||
SYSTEM_PROCESSOR="aarch64"
|
||||
;;
|
||||
x86)
|
||||
SYSTEM_PROCESSOR="i686"
|
||||
;;
|
||||
x86-64)
|
||||
SYSTEM_PROCESSOR="x86_64"
|
||||
;;
|
||||
esac
|
||||
|
||||
# WORKAROUND TO GENERATE BASE BUILD FILES
|
||||
./configure || echo "" 2>/dev/null 1>/dev/null
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DUSE_ENCLIB=openssl \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_SYSTEM_NAME=Android \
|
||||
-DCMAKE_SYSTEM_VERSION=${API} \
|
||||
-DCMAKE_ANDROID_NDK=${ANDROID_NDK_ROOT} \
|
||||
-DCMAKE_CXX_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CXX" \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_SYSTEM_LOADED=1 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="${SYSTEM_PROCESSOR}" \
|
||||
-DENABLE_STDCXX_SYNC=1 \
|
||||
-DENABLE_MONOTONIC_CLOCK=1 \
|
||||
-DENABLE_STDCXX_SYNC=1 \
|
||||
-DENABLE_CXX11=1 \
|
||||
-DUSE_OPENSSL_PC=1 \
|
||||
-DENABLE_DEBUG=0 \
|
||||
-DENABLE_LOGGING=0 \
|
||||
-DENABLE_HEAVY_LOGGING=0 \
|
||||
-DENABLE_APPS=0 \
|
||||
-DENABLE_SHARED=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_srt_package_config "1.5.2" || return 1
|
||||
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
PKG_CONFIG_PATH=${INSTALL_PKG_CONFIG_DIR}
|
||||
export LEPTONICA_CFLAGS=" $(pkg-config --cflags lept 2>>"${BASEDIR}"/build.log)"
|
||||
export LEPTONICA_LIBS=" $(pkg-config --libs lept 2>>"${BASEDIR}"/build.log)"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_tesseract} -eq 1 ]]; then
|
||||
./autogen.sh 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
# WORKAROUND TO MANUALLY SET ENDIANNESS
|
||||
export ac_cv_c_bigendian=no
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--without-tensorflow \
|
||||
--without-curl \
|
||||
--without-archive \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-debug \
|
||||
--disable-graphics \
|
||||
--disable-openmp \
|
||||
--disable-tessdata-prefix \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_tesseract_package_config "5.3.2" || return 1
|
||||
Executable
+31
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_tiff} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--with-jpeg-include-dir="${LIB_INSTALL_BASE}"/jpeg/include \
|
||||
--with-jpeg-lib-dir="${LIB_INSTALL_BASE}"/jpeg/lib \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--disable-cxx \
|
||||
--disable-win32-io \
|
||||
--disable-lzma \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export SNDFILE_CFLAGS="$(pkg-config --cflags sndfile)"
|
||||
export SNDFILE_LIBS="$(pkg-config --libs --static sndfile)"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_twolame} -eq 1 ]]; then
|
||||
NOCONFIGURE=1 ./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# WORKAROUND TO DISABLE BUILDING OF DOCBOOK - BUILD SCRIPTS DO NOT GENERATE A TARGET FOR IT
|
||||
${SED_INLINE} 's/dist_man_MANS = .*/dist_man_MANS =/g' "${BASEDIR}"/src/"${LIB_NAME}"/doc/Makefile || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a-neon)
|
||||
ASM_OPTIONS="--enable-armv7neon"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_vo_amrwbenc} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${ANDROID_SYSROOT}" \
|
||||
${ASM_OPTIONS} \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+53
@@ -0,0 +1,53 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
DEBUG_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
x86)
|
||||
|
||||
# please note that asm is disabled
|
||||
# enabling asm for x86 causes text relocations in libavfilter.so
|
||||
ASM_OPTIONS="--disable-asm"
|
||||
;;
|
||||
x86-64)
|
||||
if ! [ -x "$(command -v nasm)" ]; then
|
||||
echo -e "\n(*) nasm command not found\n"
|
||||
return 1
|
||||
fi
|
||||
|
||||
export AS="$(command -v nasm)"
|
||||
|
||||
# WORKAROUND TO ENABLE X86 ASM
|
||||
# https://github.com/android-ndk/ndk/issues/693
|
||||
export CFLAGS="${CFLAGS} -mno-stackrealign"
|
||||
;;
|
||||
esac
|
||||
if [[ -n ${FFMPEG_KIT_DEBUG} ]]; then
|
||||
DEBUG_OPTIONS="--enable-debug"
|
||||
fi
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_x264} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--enable-pic \
|
||||
--sysroot="${ANDROID_SYSROOT}" \
|
||||
--enable-static \
|
||||
--disable-cli \
|
||||
${ASM_OPTIONS} \
|
||||
${DEBUG_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp x264.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+55
@@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm-v7a | arm-v7a-neon)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=0 -DCROSS_COMPILE_ARM=1"
|
||||
;;
|
||||
arm64-v8a)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=0 -DCROSS_COMPILE_ARM=1"
|
||||
;;
|
||||
x86)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=0 -DCROSS_COMPILE_ARM=0"
|
||||
;;
|
||||
x86-64)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=0 -DCROSS_COMPILE_ARM=0"
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
# WORKAROUND TO FIX static_assert ERRORS
|
||||
${SED_INLINE} 's/gnu++98/c++11/g' "${BASEDIR}"/src/"${LIB_NAME}"/source/CMakeLists.txt || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${ANDROID_SYSROOT}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_SYSTEM_NAME=Generic \
|
||||
-DCMAKE_C_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CC" \
|
||||
-DCMAKE_CXX_COMPILER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$CXX" \
|
||||
-DCMAKE_LINKER="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$LD" \
|
||||
-DCMAKE_AR="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AR" \
|
||||
-DCMAKE_AS="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${TOOLCHAIN}/bin/$AS" \
|
||||
-DCMAKE_POSITION_INDEPENDENT_CODE=1 \
|
||||
-DSTATIC_LINK_CRT=1 \
|
||||
-DENABLE_PIC=1 \
|
||||
-DENABLE_CLI=0 \
|
||||
-DHIGH_BIT_DEPTH=1 \
|
||||
${ASM_OPTIONS} \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="${ARCH}" \
|
||||
-DENABLE_SHARED=0 "${BASEDIR}"/src/"${LIB_NAME}"/source || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_x265_package_config "3.4" || return 1
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "${BASEDIR}"/src/"${LIB_NAME}"/"${LIB_NAME}"/build/generic || return 1
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
x86)
|
||||
|
||||
# please note that asm is disabled
|
||||
# enabling asm for x86 causes text relocations in libavcodec.so
|
||||
ASM_OPTIONS="--disable-assembly"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/"${LIB_NAME}"/build/generic/configure ]] || [[ ${RECONF_xvidcore} -eq 1 ]]; then
|
||||
./bootstrap.sh
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_xvidcore_package_config "1.3.7" || return 1
|
||||
|
||||
# WORKAROUND TO REMOVE DYNAMIC LIBS
|
||||
rm -f "${LIB_INSTALL_PREFIX}"/lib/libxvidcore.so*
|
||||
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_zimg} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_zimg_package_config "3.0.5" || return 1
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_CXX_COMPILER="$CXX" \
|
||||
-DCMAKE_C_COMPILER="$CC" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk "$(get_sdk_name)" -f ar)" \
|
||||
-DCMAKE_AS="$AS" \
|
||||
-DFFT_LIB=kissfft \
|
||||
-DKISSFFT_SOURCE_DIR="${BASEDIR}"/src/"${LIB_NAME}"/src/3rdparty/kissfft \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
-DBUILD_SHARED_LIBS=0 \
|
||||
-DBUILD_TESTS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp libchromaprint.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
@@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD FLAGS
|
||||
CROSS_FILE="${BASEDIR}"/src/"${LIB_NAME}"/package/crossfiles/$ARCH-$FFMPEG_KIT_BUILD_TYPE.meson
|
||||
|
||||
create_mason_cross_file "$CROSS_FILE" || return 1
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
rm -rf "${BUILD_DIR}" || return 1
|
||||
|
||||
meson "${BUILD_DIR}" \
|
||||
--cross-file="$CROSS_FILE" \
|
||||
-Db_lto=false \
|
||||
-Db_ndebug=false \
|
||||
-Denable_asm=false \
|
||||
-Denable_tools=false \
|
||||
-Denable_examples=false \
|
||||
-Denable_tests=false || return 1
|
||||
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
ninja -j$(get_cpu_count) || return 1
|
||||
|
||||
ninja install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp "${BUILD_DIR}"/meson-private/dav1d.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "${LIB_NAME}" || return 1
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/"${LIB_NAME}"/configure ]] || [[ ${RECONF_expat} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--without-docbook \
|
||||
--without-xmlwf \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./expat.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+94
@@ -0,0 +1,94 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ENABLE COMMON FUNCTIONS
|
||||
source "${BASEDIR}"/scripts/function-"${FFMPEG_KIT_BUILD_TYPE}".sh 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
LIB_NAME="ffmpeg-kit"
|
||||
|
||||
echo -e "----------------------------------------------------------------" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "\nINFO: Building ${LIB_NAME} for ${HOST} with the following environment variables\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
env 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "----------------------------------------------------------------\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "INFO: System information\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "INFO: $(uname -a)\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "----------------------------------------------------------------\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
FFMPEG_KIT_LIBRARY_PATH="${LIB_INSTALL_BASE}/${LIB_NAME}"
|
||||
|
||||
# SET PATHS
|
||||
set_toolchain_paths "${LIB_NAME}"
|
||||
|
||||
# SET BUILD FLAGS
|
||||
HOST=$(get_host)
|
||||
export CFLAGS="$(get_cflags ${LIB_NAME}) -I${LIB_INSTALL_BASE}/ffmpeg/include"
|
||||
export CXXFLAGS=$(get_cxxflags ${LIB_NAME})
|
||||
export LDFLAGS="$(get_ldflags ${LIB_NAME}) -F${LIB_INSTALL_BASE}/ffmpeg/framework -framework Foundation -framework CoreVideo -framework libavdevice"
|
||||
export PKG_CONFIG_LIBDIR="${INSTALL_PKG_CONFIG_DIR}"
|
||||
|
||||
cd "${BASEDIR}"/apple 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# ALWAYS BUILD SHARED LIBRARIES
|
||||
BUILD_LIBRARY_OPTIONS="--enable-shared --disable-static"
|
||||
|
||||
echo -n -e "\n${LIB_NAME}: "
|
||||
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
rm -f "${BASEDIR}"/apple/src/libffmpegkit* 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# CHECK IF VIDEOTOOLBOX IS ENABLED
|
||||
VIDEOTOOLBOX_SUPPORT_FLAG=""
|
||||
if [[ ${ENABLED_LIBRARIES[$LIBRARY_APPLE_VIDEOTOOLBOX]} -eq 1 ]]; then
|
||||
VIDEOTOOLBOX_SUPPORT_FLAG="--enable-videotoolbox"
|
||||
fi
|
||||
|
||||
# ALWAYS REGENERATE BUILD FILES - NECESSARY TO APPLY THE WORKAROUNDS
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# WORKAROUNDS
|
||||
if [[ ${FFMPEG_KIT_BUILD_TYPE} != "macos" ]]; then
|
||||
|
||||
# REMOVE OPTIONS FROM CONFIGURE TO FIX THE FOLLOWING ERROR
|
||||
# ld: -flat_namespace and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together
|
||||
${SED_INLINE} 's/$wl-flat_namespace //g' configure 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
${SED_INLINE} 's/$wl-undefined //g' configure 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
${SED_INLINE} 's/${wl}suppress//g' configure 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# ld: file not found: dynamic_lookup
|
||||
${SED_INLINE} 's/${wl}dynamic_lookup//g' configure 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${FFMPEG_KIT_LIBRARY_PATH}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
${BUILD_LIBRARY_OPTIONS} \
|
||||
${VIDEOTOOLBOX_SUPPORT_FLAG} \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--host="${HOST}" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# WORKAROUND FOR clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone'
|
||||
${SED_INLINE} "s|allow_undefined_flag -o|allow_undefined_flag -target $(get_target) -o|g" libtool 1>>"${BASEDIR}"/build.log 2>&1
|
||||
${SED_INLINE} 's|\$rpath/\\$soname|@rpath/ffmpegkit.framework/ffmpegkit|g' libtool 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# DELETE THE PREVIOUS BUILD OF THE LIBRARY
|
||||
if [ -d "${FFMPEG_KIT_LIBRARY_PATH}" ]; then
|
||||
rm -rf "${FFMPEG_KIT_LIBRARY_PATH}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
make -j$(get_cpu_count) 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
make install 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "ok"
|
||||
else
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
Executable
+667
@@ -0,0 +1,667 @@
|
||||
#!/bin/bash
|
||||
|
||||
HOST_PKG_CONFIG_PATH=$(command -v pkg-config)
|
||||
if [ -z "${HOST_PKG_CONFIG_PATH}" ]; then
|
||||
echo -e "\n(*) pkg-config command not found\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LIB_NAME="ffmpeg"
|
||||
|
||||
echo -e "----------------------------------------------------------------" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "\nINFO: Building ${LIB_NAME} for ${HOST} with the following environment variables\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
env 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "----------------------------------------------------------------\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "INFO: System information\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "INFO: $(uname -a)\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
echo -e "----------------------------------------------------------------\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
FFMPEG_LIBRARY_PATH="${LIB_INSTALL_BASE}/${LIB_NAME}"
|
||||
|
||||
# SET PATHS
|
||||
set_toolchain_paths "${LIB_NAME}"
|
||||
|
||||
# SET BUILD FLAGS
|
||||
HOST=$(get_host)
|
||||
export CFLAGS=$(get_cflags "${LIB_NAME}")
|
||||
export CXXFLAGS=$(get_cxxflags "${LIB_NAME}")
|
||||
export LDFLAGS=$(get_ldflags "${LIB_NAME}")
|
||||
export PKG_CONFIG_LIBDIR="${INSTALL_PKG_CONFIG_DIR}"
|
||||
|
||||
cd "${BASEDIR}"/src/"${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# SET EXTRA BUILD FLAGS
|
||||
FFMPEG_CFLAGS=""
|
||||
FFMPEG_LDFLAGS=""
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
TARGET_CPU=""
|
||||
TARGET_ARCH=""
|
||||
ASM_OPTIONS=""
|
||||
BITCODE_FLAGS=""
|
||||
case ${ARCH} in
|
||||
armv7)
|
||||
TARGET_CPU="armv7"
|
||||
TARGET_ARCH="armv7"
|
||||
ASM_OPTIONS=" --enable-neon --enable-asm"
|
||||
BITCODE_FLAGS="-fembed-bitcode -Wc,-fembed-bitcode"
|
||||
;;
|
||||
armv7s)
|
||||
TARGET_CPU="armv7s"
|
||||
TARGET_ARCH="armv7s"
|
||||
ASM_OPTIONS=" --enable-neon --enable-asm"
|
||||
BITCODE_FLAGS="-fembed-bitcode -Wc,-fembed-bitcode"
|
||||
;;
|
||||
arm64)
|
||||
TARGET_CPU="armv8"
|
||||
TARGET_ARCH="aarch64"
|
||||
ASM_OPTIONS=" --enable-neon --enable-asm"
|
||||
if [[ ${FFMPEG_KIT_BUILD_TYPE} != "macos" ]]; then
|
||||
BITCODE_FLAGS="-fembed-bitcode -Wc,-fembed-bitcode"
|
||||
fi
|
||||
;;
|
||||
arm64-mac-catalyst)
|
||||
TARGET_CPU="armv8"
|
||||
TARGET_ARCH="aarch64"
|
||||
ASM_OPTIONS=" --enable-neon --enable-asm"
|
||||
BITCODE_FLAGS="-fembed-bitcode -Wc,-fembed-bitcode"
|
||||
;;
|
||||
arm64-simulator)
|
||||
TARGET_CPU="armv8"
|
||||
TARGET_ARCH="aarch64"
|
||||
ASM_OPTIONS=" --enable-neon --enable-asm"
|
||||
BITCODE_FLAGS=""
|
||||
;;
|
||||
arm64e)
|
||||
TARGET_CPU="armv8.3-a"
|
||||
TARGET_ARCH="aarch64"
|
||||
ASM_OPTIONS=" --enable-neon --enable-asm"
|
||||
BITCODE_FLAGS="-fembed-bitcode -Wc,-fembed-bitcode"
|
||||
;;
|
||||
i386)
|
||||
TARGET_CPU="i386"
|
||||
TARGET_ARCH="i386"
|
||||
ASM_OPTIONS=" --disable-neon --enable-asm"
|
||||
BITCODE_FLAGS=""
|
||||
;;
|
||||
x86-64)
|
||||
TARGET_CPU="x86_64"
|
||||
TARGET_ARCH="x86_64"
|
||||
ASM_OPTIONS=" --disable-neon --disable-asm"
|
||||
BITCODE_FLAGS=""
|
||||
;;
|
||||
x86-64-mac-catalyst)
|
||||
TARGET_CPU="x86_64"
|
||||
TARGET_ARCH="x86_64"
|
||||
ASM_OPTIONS=" --disable-neon --disable-asm"
|
||||
BITCODE_FLAGS="-fembed-bitcode -Wc,-fembed-bitcode"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ ! -z $NO_BITCODE ]; then
|
||||
BITCODE_FLAGS=""
|
||||
fi
|
||||
|
||||
CONFIGURE_POSTFIX=""
|
||||
HIGH_PRIORITY_LDFLAGS=""
|
||||
|
||||
# SET CONFIGURE OPTIONS
|
||||
for library in {0..61}; do
|
||||
if [[ ${ENABLED_LIBRARIES[$library]} -eq 1 ]]; then
|
||||
ENABLED_LIBRARY=$(get_library_name ${library})
|
||||
|
||||
echo -e "INFO: Enabling library ${ENABLED_LIBRARY}\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
case ${ENABLED_LIBRARY} in
|
||||
chromaprint)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags libchromaprint 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static libchromaprint 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-chromaprint"
|
||||
;;
|
||||
dav1d)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags dav1d 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static dav1d 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libdav1d"
|
||||
;;
|
||||
fontconfig)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags fontconfig 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static fontconfig 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libfontconfig"
|
||||
;;
|
||||
freetype)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags freetype2 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static freetype2 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libfreetype"
|
||||
;;
|
||||
fribidi)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags fribidi 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static fribidi 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libfribidi"
|
||||
;;
|
||||
gmp)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags gmp 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static gmp 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-gmp"
|
||||
;;
|
||||
gnutls)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags gnutls 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static gnutls 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-gnutls"
|
||||
;;
|
||||
kvazaar)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags kvazaar 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static kvazaar 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libkvazaar"
|
||||
;;
|
||||
lame)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags libmp3lame 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static libmp3lame 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libmp3lame"
|
||||
;;
|
||||
libaom)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags aom 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static aom 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libaom"
|
||||
;;
|
||||
libass)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags libass 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static libass 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libass"
|
||||
;;
|
||||
libilbc)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags libilbc 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static libilbc 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libilbc"
|
||||
;;
|
||||
libtheora)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags theora 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static theora 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libtheora"
|
||||
;;
|
||||
libvidstab)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags vidstab 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static vidstab 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libvidstab"
|
||||
;;
|
||||
libvorbis)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags vorbis 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static vorbis 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libvorbis"
|
||||
;;
|
||||
libvpx)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags vpx 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static vpx 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libvpx"
|
||||
;;
|
||||
libwebp)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags libwebp 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static libwebp 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libwebp"
|
||||
;;
|
||||
libxml2)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags libxml-2.0 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static libxml-2.0 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libxml2"
|
||||
;;
|
||||
opencore-amr)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags opencore-amrnb 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static opencore-amrnb 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libopencore-amrnb"
|
||||
;;
|
||||
openh264)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags openh264 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static openh264 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libopenh264"
|
||||
;;
|
||||
openssl)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags openssl 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static openssl 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-openssl"
|
||||
;;
|
||||
opus)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags opus 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static opus 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libopus"
|
||||
;;
|
||||
rubberband)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags rubberband 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static rubberband 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" -framework Accelerate"
|
||||
CONFIGURE_POSTFIX+=" --enable-librubberband"
|
||||
;;
|
||||
sdl)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags sdl2 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static sdl2 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-sdl2"
|
||||
;;
|
||||
shine)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags shine 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static shine 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libshine"
|
||||
;;
|
||||
snappy)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags snappy 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static snappy 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libsnappy"
|
||||
;;
|
||||
soxr)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags soxr 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static soxr 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libsoxr"
|
||||
;;
|
||||
speex)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags speex 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static speex 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libspeex"
|
||||
;;
|
||||
srt)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags srt 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static srt 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libsrt"
|
||||
;;
|
||||
tesseract)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags tesseract 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static tesseract 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags giflib 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static giflib 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libtesseract"
|
||||
;;
|
||||
twolame)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags twolame 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static twolame 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libtwolame"
|
||||
;;
|
||||
vo-amrwbenc)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags vo-amrwbenc 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static vo-amrwbenc 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libvo-amrwbenc"
|
||||
;;
|
||||
x264)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags x264 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static x264 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libx264"
|
||||
;;
|
||||
x265)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags x265 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static x265 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libx265"
|
||||
;;
|
||||
xvidcore)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags xvidcore 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static xvidcore 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libxvid"
|
||||
;;
|
||||
zimg)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags zimg 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static zimg 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-libzimg"
|
||||
;;
|
||||
expat)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags expat 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static expat 2>>"${BASEDIR}"/build.log)"
|
||||
HIGH_PRIORITY_LDFLAGS+=" $(pkg-config --libs --static expat 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
libogg)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags ogg 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static ogg 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
libpng)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags libpng 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static libpng 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
nettle)
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags nettle 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static nettle 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags hogweed 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static hogweed 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
ios-* | tvos-* | macos-*)
|
||||
|
||||
# BUILT-IN LIBRARIES SHARE INCLUDE AND LIB DIRECTORIES
|
||||
# INCLUDING ONLY ONE OF THEM IS ENOUGH
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags zlib 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static zlib 2>>"${BASEDIR}"/build.log)"
|
||||
|
||||
case ${ENABLED_LIBRARY} in
|
||||
*-audiotoolbox)
|
||||
CONFIGURE_POSTFIX+=" --enable-audiotoolbox"
|
||||
|
||||
if [[ ${FFMPEG_KIT_BUILD_TYPE} != "macos" ]]; then
|
||||
|
||||
# NOT AVAILABLE ON IOS, TVOS
|
||||
CONFIGURE_POSTFIX+=" --disable-outdev=audiotoolbox"
|
||||
fi
|
||||
;;
|
||||
*-avfoundation)
|
||||
CONFIGURE_POSTFIX+=" --enable-avfoundation"
|
||||
;;
|
||||
*-bzip2)
|
||||
CONFIGURE_POSTFIX+=" --enable-bzlib"
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags bzip2 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs bzip2 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
*-coreimage)
|
||||
CONFIGURE_POSTFIX+=" --enable-coreimage --enable-appkit"
|
||||
;;
|
||||
*-libiconv)
|
||||
CONFIGURE_POSTFIX+=" --enable-iconv"
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags libiconv 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs libiconv 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
*-opencl)
|
||||
CONFIGURE_POSTFIX+=" --enable-opencl"
|
||||
;;
|
||||
*-opengl)
|
||||
CONFIGURE_POSTFIX+=" --enable-opengl"
|
||||
;;
|
||||
*-videotoolbox)
|
||||
CONFIGURE_POSTFIX+=" --enable-videotoolbox"
|
||||
;;
|
||||
*-zlib)
|
||||
CONFIGURE_POSTFIX+=" --enable-zlib"
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags zlib 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs zlib 2>>"${BASEDIR}"/build.log)"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
else
|
||||
|
||||
# THE FOLLOWING LIBRARIES SHOULD BE EXPLICITLY DISABLED TO PREVENT AUTODETECT
|
||||
# NOTE THAT IDS MUST BE +1 OF THE INDEX VALUE
|
||||
if [[ ${library} -eq ${LIBRARY_SDL} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-sdl2"
|
||||
elif [[ ${library} -eq ${LIBRARY_APPLE_AUDIOTOOLBOX} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-audiotoolbox"
|
||||
elif [[ ${library} -eq ${LIBRARY_APPLE_AVFOUNDATION} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-avfoundation"
|
||||
elif [[ ${library} -eq ${LIBRARY_APPLE_BZIP2} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-bzlib"
|
||||
elif [[ ${library} -eq ${LIBRARY_APPLE_COREIMAGE} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-coreimage --disable-appkit"
|
||||
elif [[ ${library} -eq ${LIBRARY_APPLE_LIBICONV} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-iconv"
|
||||
elif [[ ${library} -eq ${LIBRARY_APPLE_OPENCL} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-opencl"
|
||||
elif [[ ${library} -eq ${LIBRARY_APPLE_OPENGL} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-opengl"
|
||||
elif [[ ${library} -eq ${LIBRARY_APPLE_VIDEOTOOLBOX} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-videotoolbox"
|
||||
elif [[ ${library} -eq ${LIBRARY_SYSTEM_ZLIB} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-zlib"
|
||||
elif [[ ${library} -eq ${LIBRARY_OPENSSL} ]]; then
|
||||
CONFIGURE_POSTFIX+=" --disable-openssl"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# SET CONFIGURE OPTIONS FOR CUSTOM LIBRARIES
|
||||
for custom_library_index in "${CUSTOM_LIBRARIES[@]}"; do
|
||||
library_name="CUSTOM_LIBRARY_${custom_library_index}_NAME"
|
||||
pc_file_name="CUSTOM_LIBRARY_${custom_library_index}_PACKAGE_CONFIG_FILE_NAME"
|
||||
ffmpeg_flag_name="CUSTOM_LIBRARY_${custom_library_index}_FFMPEG_ENABLE_FLAG"
|
||||
|
||||
echo -e "INFO: Enabling custom library ${!library_name}\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
FFMPEG_CFLAGS+=" $(pkg-config --cflags ${!pc_file_name} 2>>"${BASEDIR}"/build.log)"
|
||||
FFMPEG_LDFLAGS+=" $(pkg-config --libs --static ${!pc_file_name} 2>>"${BASEDIR}"/build.log)"
|
||||
CONFIGURE_POSTFIX+=" --enable-${!ffmpeg_flag_name}"
|
||||
done
|
||||
|
||||
# SET ENABLE GPL FLAG WHEN REQUESTED
|
||||
if [ "$GPL_ENABLED" == "yes" ]; then
|
||||
CONFIGURE_POSTFIX+=" --enable-gpl"
|
||||
fi
|
||||
|
||||
# ALWAYS BUILD SHARED LIBRARIES
|
||||
BUILD_LIBRARY_OPTIONS="--enable-shared --disable-static --install-name-dir=@rpath"
|
||||
|
||||
# OPTIMIZE FOR SPEED INSTEAD OF SIZE
|
||||
if [[ -z ${FFMPEG_KIT_OPTIMIZED_FOR_SPEED} ]]; then
|
||||
SIZE_OPTIONS="--enable-small"
|
||||
else
|
||||
SIZE_OPTIONS=""
|
||||
fi
|
||||
|
||||
# SET DEBUG OPTIONS
|
||||
if [[ -z ${FFMPEG_KIT_DEBUG} ]]; then
|
||||
DEBUG_OPTIONS="--disable-debug"
|
||||
else
|
||||
DEBUG_OPTIONS="--enable-debug --disable-stripping"
|
||||
fi
|
||||
|
||||
# PREPARE CFLAGS PARTS BEFORE COMBINING THEM
|
||||
ARCH_CFLAGS=$(get_arch_specific_cflags)
|
||||
APP_CFLAGS=$(get_app_specific_cflags ${LIB_NAME})
|
||||
COMMON_CFLAGS=$(get_common_cflags)
|
||||
if [[ -z ${FFMPEG_KIT_DEBUG} ]]; then
|
||||
OPTIMIZATION_CFLAGS="$(get_size_optimization_cflags ${LIB_NAME})"
|
||||
else
|
||||
OPTIMIZATION_CFLAGS="${FFMPEG_KIT_DEBUG}"
|
||||
fi
|
||||
MIN_VERSION_CFLAGS=$(get_min_version_cflags)
|
||||
COMMON_INCLUDES=$(get_common_includes)
|
||||
|
||||
# PREPARE CFLAGS LDFLAGS BEFORE COMBINING THEM
|
||||
ARCH_LDFLAGS=$(get_arch_specific_ldflags)
|
||||
if [[ -z ${FFMPEG_KIT_DEBUG} ]]; then
|
||||
OPTIMIZATION_FLAGS="$(get_size_optimization_ldflags ${LIB_NAME})"
|
||||
else
|
||||
OPTIMIZATION_FLAGS="${FFMPEG_KIT_DEBUG}"
|
||||
fi
|
||||
LINKED_LIBRARIES=$(get_common_linked_libraries)
|
||||
COMMON_LDFLAGS=$(get_common_ldflags)
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS="${ARCH_CFLAGS} ${APP_CFLAGS} ${COMMON_CFLAGS} ${OPTIMIZATION_CFLAGS} ${MIN_VERSION_CFLAGS}${FFMPEG_CFLAGS} ${COMMON_INCLUDES}"
|
||||
export CXXFLAGS=$(get_cxxflags "${LIB_NAME}")
|
||||
export LDFLAGS="${ARCH_LDFLAGS}${HIGH_PRIORITY_LDFLAGS}${FFMPEG_LDFLAGS} ${LINKED_LIBRARIES} ${COMMON_LDFLAGS} ${BITCODE_FLAGS} ${OPTIMIZATION_FLAGS}"
|
||||
|
||||
echo -n -e "\n${LIB_NAME}: "
|
||||
|
||||
if [[ -z ${NO_WORKSPACE_CLEANUP_ffmpeg} ]]; then
|
||||
echo -e "INFO: Cleaning workspace for ${LIB_NAME}\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUND TO MANUALLY DELETE UNCLEANED FILES
|
||||
rm -f "${BASEDIR}"/src/"${LIB_NAME}"/libavfilter/opencl/*.o 1>>"${BASEDIR}"/build.log 2>&1
|
||||
rm -f "${BASEDIR}"/src/"${LIB_NAME}"/libavcodec/neon/*.o 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# DELETE SHARED FRAMEWORK WORKAROUNDS
|
||||
git checkout "${BASEDIR}/src/ffmpeg/ffbuild" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
fi
|
||||
|
||||
########################### CUSTOMIZATIONS #######################
|
||||
git checkout libavformat/file.c 1>>"${BASEDIR}"/build.log 2>&1
|
||||
git checkout libavformat/protocols.c 1>>"${BASEDIR}"/build.log 2>&1
|
||||
git checkout libavutil 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# 1. Workaround to prevent adding of -mdynamic-no-pic flag
|
||||
${SED_INLINE} 's/check_cflags -mdynamic-no-pic && add_asflags -mdynamic-no-pic;/check_cflags -mdynamic-no-pic;/g' ./configure 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# 2. Workaround for videotoolbox on mac catalyst
|
||||
if [[ ${ARCH} == *-mac-catalyst ]]; then
|
||||
${SED_INLINE} 's/ CFDictionarySetValue(buffer_attributes\, kCVPixelBufferOpenGLESCompatibilityKey/ \/\/ CFDictionarySetValue(buffer_attributes\, kCVPixelBufferOpenGLESCompatibilityKey/g' "${BASEDIR}"/src/${LIB_NAME}/libavcodec/videotoolbox.c || return 1
|
||||
else
|
||||
${SED_INLINE} 's/ \/\/ CFDictionarySetValue(buffer_attributes\, kCVPixelBufferOpenGLESCompatibilityKey/ CFDictionarySetValue(buffer_attributes\, kCVPixelBufferOpenGLESCompatibilityKey/g' "${BASEDIR}"/src/${LIB_NAME}/libavcodec/videotoolbox.c || return 1
|
||||
fi
|
||||
|
||||
# 3. Use thread local log levels
|
||||
${SED_INLINE} 's/static int av_log_level/__thread int av_log_level/g' "${BASEDIR}"/src/${LIB_NAME}/libavutil/log.c 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
###################################################################
|
||||
|
||||
./configure \
|
||||
--cross-prefix="${HOST}-" \
|
||||
--sysroot="${SDK_PATH}" \
|
||||
--prefix="${FFMPEG_LIBRARY_PATH}" \
|
||||
--pkg-config="${HOST_PKG_CONFIG_PATH}" \
|
||||
--enable-version3 \
|
||||
--arch="${TARGET_ARCH}" \
|
||||
--cpu="${TARGET_CPU}" \
|
||||
--target-os=darwin \
|
||||
${ASM_OPTIONS} \
|
||||
--ar="${AR}" \
|
||||
--cc="${CC}" \
|
||||
--cxx="${CXX}" \
|
||||
--as="${AS}" \
|
||||
--ranlib="${RANLIB}" \
|
||||
--strip="${STRIP}" \
|
||||
--nm="${NM}" \
|
||||
--extra-ldflags="$(get_min_version_cflags)" \
|
||||
--disable-autodetect \
|
||||
--enable-cross-compile \
|
||||
--enable-pic \
|
||||
--enable-inline-asm \
|
||||
--enable-optimizations \
|
||||
--enable-swscale \
|
||||
${BUILD_LIBRARY_OPTIONS} \
|
||||
--enable-pthreads \
|
||||
--disable-v4l2-m2m \
|
||||
--disable-outdev=v4l2 \
|
||||
--disable-outdev=fbdev \
|
||||
--disable-indev=v4l2 \
|
||||
--disable-indev=fbdev \
|
||||
${SIZE_OPTIONS} \
|
||||
--disable-xmm-clobber-test \
|
||||
${DEBUG_OPTIONS} \
|
||||
--disable-neon-clobber-test \
|
||||
--disable-programs \
|
||||
--disable-postproc \
|
||||
--disable-doc \
|
||||
--disable-htmlpages \
|
||||
--disable-manpages \
|
||||
--disable-podpages \
|
||||
--disable-txtpages \
|
||||
--disable-sndio \
|
||||
--disable-schannel \
|
||||
--disable-securetransport \
|
||||
--disable-xlib \
|
||||
--disable-cuda \
|
||||
--disable-cuvid \
|
||||
--disable-nvenc \
|
||||
--disable-vaapi \
|
||||
--disable-vdpau \
|
||||
--disable-alsa \
|
||||
--disable-cuda \
|
||||
--disable-cuvid \
|
||||
--disable-nvenc \
|
||||
--disable-vaapi \
|
||||
--disable-vdpau \
|
||||
${CONFIGURE_POSTFIX} 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
build_ffmpeg() {
|
||||
if [[ -z ${NO_OUTPUT_REDIRECTION} ]]; then
|
||||
make -j$(get_cpu_count) 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo -e "started\n"
|
||||
make -j$(get_cpu_count)
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo -n -e "\n${LIB_NAME}: failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
else
|
||||
echo -n -e "\n${LIB_NAME}: "
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
install_ffmpeg() {
|
||||
|
||||
if [[ -n $1 ]]; then
|
||||
|
||||
# DELETE THE PREVIOUS BUILD
|
||||
if [ -d "${FFMPEG_LIBRARY_PATH}" ]; then
|
||||
rm -rf "${FFMPEG_LIBRARY_PATH}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
else
|
||||
|
||||
# LEAVE EVERYTHING EXCEPT frameworks
|
||||
rm -rf "${FFMPEG_LIBRARY_PATH}/include" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
rm -rf "${FFMPEG_LIBRARY_PATH}/lib" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
rm -rf "${FFMPEG_LIBRARY_PATH}/share" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
make install 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
${SED_INLINE} 's|$(SLIBNAME_WITH_MAJOR),|$(SLIBPREF)$(FULLNAME).framework/$(SLIBPREF)$(FULLNAME),|g' ${BASEDIR}/src/ffmpeg/ffbuild/config.mak 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# BUILD DYNAMIC LIBRARIES WITH DEFAULT OPTIONS
|
||||
build_ffmpeg
|
||||
install_ffmpeg "true"
|
||||
|
||||
# CLEAN THE OUTPUT OF FIRST BUILD
|
||||
find . -name "*.dylib" -delete 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
echo -e "\nShared libraries built successfully. Building frameworks.\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
create_temporary_framework() {
|
||||
local FRAMEWORK_NAME="$1"
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}/framework/${FRAMEWORK_NAME}.framework" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
cp "${FFMPEG_LIBRARY_PATH}/lib/${FRAMEWORK_NAME}.dylib" "${FFMPEG_LIBRARY_PATH}/framework/${FRAMEWORK_NAME}.framework/${FRAMEWORK_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
}
|
||||
|
||||
create_temporary_framework "libavcodec"
|
||||
create_temporary_framework "libavdevice"
|
||||
create_temporary_framework "libavfilter"
|
||||
create_temporary_framework "libavformat"
|
||||
create_temporary_framework "libavutil"
|
||||
create_temporary_framework "libswresample"
|
||||
create_temporary_framework "libswscale"
|
||||
|
||||
${SED_INLINE} 's|$(SLIBNAME_WITH_MAJOR),|$(SLIBPREF)$(FULLNAME).framework/$(SLIBPREF)$(FULLNAME),|g' ${BASEDIR}/src/ffmpeg/ffbuild/config.mak 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
${SED_INLINE} 's|$(LD_LIB)|-framework lib% |g' ${BASEDIR}/src/ffmpeg/ffbuild/common.mak 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
${SED_INLINE} "s|\$(LD_PATH)lib%|-F ${FFMPEG_LIBRARY_PATH}/framework|g" ${BASEDIR}/src/ffmpeg/ffbuild/common.mak 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# BUILD FRAMEWORKS AS DYNAMIC LIBRARIES
|
||||
build_ffmpeg
|
||||
install_ffmpeg
|
||||
|
||||
# MANUALLY ADD REQUIRED HEADERS
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavutil/x86 1>>"${BASEDIR}"/build.log 2>&1
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavutil/arm 1>>"${BASEDIR}"/build.log 2>&1
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavutil/aarch64 1>>"${BASEDIR}"/build.log 2>&1
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/x86 1>>"${BASEDIR}"/build.log 2>&1
|
||||
mkdir -p "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/arm 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/config.h "${FFMPEG_LIBRARY_PATH}"/include/config.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavcodec/mathops.h "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/mathops.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavcodec/x86/mathops.h "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/x86/mathops.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavcodec/arm/mathops.h "${FFMPEG_LIBRARY_PATH}"/include/libavcodec/arm/mathops.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavformat/network.h "${FFMPEG_LIBRARY_PATH}"/include/libavformat/network.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavformat/os_support.h "${FFMPEG_LIBRARY_PATH}"/include/libavformat/os_support.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavformat/url.h "${FFMPEG_LIBRARY_PATH}"/include/libavformat/url.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/attributes_internal.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/attributes_internal.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/bprint.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/bprint.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/getenv_utf8.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/getenv_utf8.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/internal.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/internal.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/libm.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/libm.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/reverse.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/reverse.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/thread.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/thread.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/timer.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/timer.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/x86/asm.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/x86/asm.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/x86/timer.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/x86/timer.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/arm/timer.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/arm/timer.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/aarch64/timer.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/aarch64/timer.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
overwrite_file "${BASEDIR}"/src/ffmpeg/libavutil/x86/emms.h "${FFMPEG_LIBRARY_PATH}"/include/libavutil/x86/emms.h 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "ok"
|
||||
else
|
||||
echo -e "failed\n\nSee build.log for details\n"
|
||||
exit 1
|
||||
fi
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUND FOR "bad flag in substitute command"
|
||||
${SED_INLINE} "s|in \"\$default_fonts\"|in \$default_fonts|g" "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_fontconfig} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-libiconv-prefix="${SDK_PATH}"/usr \
|
||||
--with-expat="${LIB_INSTALL_BASE}"/expat \
|
||||
--without-libintl-prefix \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-rpath \
|
||||
--disable-libxml2 \
|
||||
--disable-docs \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# DISABLE IOS TESTS with system() calls - system() is deprecated for IOS
|
||||
# 1. test-bz106632.c
|
||||
overwrite_file "${BASEDIR}"/src/"${LIB_NAME}"/test/test-bz106618.c "${BASEDIR}"/src/"${LIB_NAME}"/test/test-bz106632.c
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_fontconfig_package_config "2.14.2" || return 1
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export LIBPNG_CFLAGS="-I${LIB_INSTALL_BASE}/libpng/include"
|
||||
export LIBPNG_LIBS="-L${LIB_INSTALL_BASE}/libpng/lib"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/builds/unix/configure ]] || [[ ${RECONF_freetype} -eq 1 ]]; then
|
||||
|
||||
# NOTE THAT FREETYPE DOES NOT SUPPORT AUTORECONF BUT IT COMES WITH AN autogen.sh
|
||||
./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
# UPDATE CONFIG FILES TO SUPPORT APPLE ARCHITECTURES
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.guess "${BASEDIR}"/src/"${LIB_NAME}"/builds/unix/config.guess || return 1
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.sub "${BASEDIR}"/src/"${LIB_NAME}"/builds/unix/config.sub || return 1
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-zlib \
|
||||
--with-png \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--without-harfbuzz \
|
||||
--without-bzip2 \
|
||||
--without-fsref \
|
||||
--without-quickdraw-toolbox \
|
||||
--without-quickdraw-carbon \
|
||||
--without-ats \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-mmap \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_freetype_package_config "25.0.19" || return 1
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_fribidi} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-debug \
|
||||
--disable-deprecated \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# WORKAROUND TO DISABLE BUILDING OF doc FOLDER (doc depends on c2man which is not available on all platforms)
|
||||
${SED_INLINE} 's/ doc / /g' "${BASEDIR}"/src/"${LIB_NAME}"/Makefile || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+31
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS=$(get_cflags "${LIB_NAME}")" -DS_IREAD=S_IRUSR -DS_IWRITE=S_IWUSR"
|
||||
|
||||
# COPY BUILD FILES
|
||||
cp "${BASEDIR}"/tools/patch/make/giflib/* "${BASEDIR}"/src/"${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_giflib} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_giflib_package_config "5.2.1" || return 1
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
unset gmp_cv_asm_w32
|
||||
case ${ARCH} in
|
||||
i386)
|
||||
HOST="x86-ios-darwin"
|
||||
;;
|
||||
x86-64-mac-catalyst)
|
||||
# Workaround for 'cannot determine how to define a 32-bit word' error
|
||||
export gmp_cv_asm_w32=".long"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_gmp} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
# UPDATE CONFIG FILES TO SUPPORT APPLE ARCHITECTURES
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.guess "${BASEDIR}"/src/"${LIB_NAME}"/config.guess || return 1
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.sub "${BASEDIR}"/src/"${LIB_NAME}"/config.sub || return 1
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-assembly \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_gmp_package_config "6.2.1" || return 1
|
||||
Executable
+68
@@ -0,0 +1,68 @@
|
||||
#!/bin/bash
|
||||
|
||||
# INIT SUBMODULES
|
||||
${SED_INLINE} 's|openssl/openssl|arthenica/openssl|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|tomato42|arthenica|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|warner|arthenica|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/libidn/gnulib-mirror|github.com/arthenica/gnulib|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/gnutls/libtasn1|github.com/arthenica/libtasn1|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/gnutls/nettle|github.com/arthenica/nettle|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/gnutls/abi-dump|github.com/arthenica/abi-dump|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/gnutls/cligen|github.com/arthenica/cligen|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
${SED_INLINE} 's|gitlab.com/redhat-crypto/tests/interop|github.com/arthenica/redhat-crypto-tests-interop|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS="$(get_cflags ${LIB_NAME}) -I${SDK_PATH}/usr/include"
|
||||
export CXXFLAGS=$(get_cxxflags "${LIB_NAME}")
|
||||
export LDFLAGS="$(get_ldflags ${LIB_NAME}) -L${SDK_PATH}/usr/lib"
|
||||
|
||||
export NETTLE_CFLAGS="-I${LIB_INSTALL_BASE}/nettle/include"
|
||||
export NETTLE_LIBS="-L${LIB_INSTALL_BASE}/nettle/lib -lnettle -L${LIB_INSTALL_BASE}/gmp/lib -lgmp"
|
||||
export HOGWEED_CFLAGS="-I${LIB_INSTALL_BASE}/nettle/include"
|
||||
export HOGWEED_LIBS="-L${LIB_INSTALL_BASE}/nettle/lib -lhogweed -L${LIB_INSTALL_BASE}/gmp/lib -lgmp"
|
||||
export GMP_CFLAGS="-I${LIB_INSTALL_BASE}/gmp/include"
|
||||
export GMP_LIBS="-L${LIB_INSTALL_BASE}/gmp/lib -lgmp"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_gnutls} -eq 1 ]]; then
|
||||
./bootstrap --skip-po || return 1
|
||||
git submodule update --remote gnulib || return 1
|
||||
overwrite_file ./gnulib/lib/fpending.c ./src/gl/fpending.c || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--with-included-libtasn1 \
|
||||
--with-included-unistring \
|
||||
--without-idn \
|
||||
--without-p11-kit \
|
||||
--enable-hardware-acceleration \
|
||||
--enable-static \
|
||||
--disable-openssl-compatibility \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-code-coverage \
|
||||
--disable-doc \
|
||||
--disable-manpages \
|
||||
--disable-guile \
|
||||
--disable-tests \
|
||||
--disable-tools \
|
||||
--disable-maintainer-mode \
|
||||
--disable-full-test-suite \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
if [[ ${FFMPEG_KIT_BUILD_TYPE} == "macos" ]]; then
|
||||
create_gnutls_package_config "3.7.9" "-framework Security" || return 1
|
||||
else
|
||||
create_gnutls_package_config "3.7.9" || return 1
|
||||
fi
|
||||
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_harfbuzz} -eq 1 ]]; then
|
||||
NOCONFIGURE=1 ./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--with-glib=no \
|
||||
--with-freetype=yes \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# WORKAROUNDS
|
||||
git checkout ${BASEDIR}/src/${LIB_NAME}/libtool 1>>"${BASEDIR}"/build.log 2>&1
|
||||
if [[ ${FFMPEG_KIT_BUILD_TYPE} != "macos" ]]; then
|
||||
|
||||
# WORKAROUND TO REMOVE -bind_at_load FLAG WHICH CAN NOT BE USED WHEN BITCODE IS ENABLED
|
||||
${SED_INLINE} 's/$wl-bind_at_load//g' ${BASEDIR}/src/${LIB_NAME}/libtool
|
||||
fi
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./src/harfbuzz.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
|
||||
# WORKAROUND TO REMOVE INSTALLED .la FILES
|
||||
rm -f "${LIB_INSTALL_PREFIX}"/lib/*.la
|
||||
Executable
+62
@@ -0,0 +1,62 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD FLAGS
|
||||
export CCAS=${AS}
|
||||
export ASM_FLAGS=$(get_asmflags "${LIB_NAME}")
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
armv7 | armv7s | arm64*)
|
||||
ASM_OPTIONS="-DWITH_SIMD=1"
|
||||
;;
|
||||
*)
|
||||
case ${FFMPEG_KIT_BUILD_TYPE} in
|
||||
ios)
|
||||
ASM_OPTIONS="-DWITH_SIMD=0"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS="-DWITH_SIMD=1"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
|
||||
# WORKAROUND TO FIX ASM FLAGS
|
||||
${SED_INLINE} 's/${CMAKE_C_FLAGS} ${CMAKE_ASM_FLAGS}/${CMAKE_ASM_FLAGS}/g' "${BASEDIR}"/src/"${LIB_NAME}"/simd/CMakeLists.txt
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME=Darwin \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_C_COMPILER="$CC" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk $(get_sdk_name) -f ar)" \
|
||||
-DCMAKE_ASM_FLAGS="$ASM_FLAGS" \
|
||||
-DENABLE_PIC=1 \
|
||||
-DENABLE_STATIC=1 \
|
||||
-DENABLE_SHARED=0 \
|
||||
-DWITH_JPEG8=1 \
|
||||
${ASM_OPTIONS} \
|
||||
-DWITH_TURBOJPEG=0 \
|
||||
-DWITH_JAVA=0 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp "${BUILD_DIR}"/pkgscripts/libjpeg.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS="--enable-asm"
|
||||
case ${ARCH} in
|
||||
i386)
|
||||
HOST="x86-ios-darwin"
|
||||
;;
|
||||
x86-64 | x86-64-mac-catalyst)
|
||||
ASM_OPTIONS="--disable-asm"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_kvazaar} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# NOTE THAT kvazaar DOES NOT SUPPORT PARALLEL EXECUTION
|
||||
make || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./src/kvazaar.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "${LIB_NAME}" || return 1
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_lame} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--with-libiconv-prefix="${SDK_PATH}"/usr \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--disable-frontend \
|
||||
--disable-efence \
|
||||
--disable-gtktest \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libmp3lame_package_config "3.100" || return 1
|
||||
Executable
+53
@@ -0,0 +1,53 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
HOST=$(get_host)
|
||||
export CFLAGS=$(get_cflags "${LIB_NAME}")
|
||||
export CXXFLAGS=$(get_cxxflags "${LIB_NAME}")
|
||||
export CPPFLAGS="-I${LIB_INSTALL_BASE}/giflib/include"
|
||||
export LDFLAGS="$(get_ldflags "${LIB_NAME}") -L${LIB_INSTALL_BASE}/giflib/lib -lgif"
|
||||
|
||||
export LIBPNG_CFLAGS="$(pkg-config --cflags libpng)"
|
||||
export LIBPNG_LIBS="$(pkg-config --libs --static libpng)"
|
||||
|
||||
export LIBWEBP_CFLAGS="$(pkg-config --cflags libwebp)"
|
||||
export LIBWEBP_LIBS="$(pkg-config --libs --static libwebp)"
|
||||
|
||||
export LIBTIFF_CFLAGS="$(pkg-config --cflags libtiff-4)"
|
||||
export LIBTIFF_LIBS="$(pkg-config --libs --static libtiff-4)"
|
||||
|
||||
export ZLIB_CFLAGS="$(pkg-config --cflags zlib)"
|
||||
export ZLIB_LIBS="$(pkg-config --libs zlib)"
|
||||
|
||||
export JPEG_CFLAGS="$(pkg-config --cflags libjpeg)"
|
||||
export JPEG_LIBS="$(pkg-config --libs --static libjpeg)"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_leptonica} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-zlib \
|
||||
--with-libpng \
|
||||
--with-jpeg \
|
||||
--with-giflib \
|
||||
--with-libtiff \
|
||||
--with-libwebp \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-programs \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp lept.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+59
@@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
|
||||
# DISABLE ASM WORKAROUNDS BEFORE APPLYING THEM AGAIN
|
||||
git checkout ${BASEDIR}/src/${LIB_NAME}/aom_ports 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm*)
|
||||
ASM_OPTIONS="-DCONFIG_RUNTIME_CPU_DETECT=0 -DARCH_ARM=1 -DENABLE_NEON=1 -DHAVE_NEON=1"
|
||||
;;
|
||||
i386)
|
||||
ASM_OPTIONS="-DARCH_X86=1 -DENABLE_SSE=0 -DHAVE_SSE=0 -DENABLE_SSE3=0 -DHAVE_SSE3=0"
|
||||
;;
|
||||
x86-64*)
|
||||
ASM_OPTIONS="-DARCH_X86_64=0 -DENABLE_SSE=0 -DENABLE_SSE2=0 -DENABLE_SSE3=0 -DENABLE_SSE4_1=0 -DENABLE_SSE4_2=0 -DENABLE_MMX=0"
|
||||
|
||||
# WORKAROUND TO DISABLE ASM
|
||||
${SED_INLINE} 's/define aom_clear_system_state() aom_reset_mmx_state()/define aom_clear_system_state()/g' ${BASEDIR}/src/${LIB_NAME}/aom_ports/system_state.h
|
||||
${SED_INLINE} 's/ add_asm_library("aom_ports/#add_asm_library("aom_ports/g' ${BASEDIR}/src/${LIB_NAME}/aom_ports/aom_ports.cmake
|
||||
${SED_INLINE} 's/ target_sources(aom_ports/#target_sources(aom_ports/g' ${BASEDIR}/src/${LIB_NAME}/aom_ports/aom_ports.cmake
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCONFIG_PIC=1 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_CXX_COMPILER="$CXX" \
|
||||
-DCMAKE_C_COMPILER="$CC" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk $(get_sdk_name) -f ar)" \
|
||||
-DCMAKE_AS="$AS" \
|
||||
${ASM_OPTIONS} \
|
||||
-DENABLE_TESTS=0 \
|
||||
-DENABLE_EXAMPLES=0 \
|
||||
-DENABLE_TOOLS=0 \
|
||||
-DCONFIG_UNIT_TESTS=0 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp "${BUILD_DIR}"/aom.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS="--enable-asm"
|
||||
case ${ARCH} in
|
||||
arm* | x86-64 | x86-64-mac-catalyst)
|
||||
ASM_OPTIONS="--disable-asm"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libass} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--disable-libtool-lock \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-require-system-font-provider \
|
||||
--disable-fast-install \
|
||||
--disable-test \
|
||||
--disable-profile \
|
||||
--disable-coretext \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+36
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
# INIT SUBMODULES
|
||||
${SED_INLINE} 's|/abseil/|/arthenica/|g' "${BASEDIR}"/src/"${LIB_NAME}"/.gitmodules || return 1
|
||||
git submodule update --init || return 1
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_ASM_FLAGS="${ASM_FLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME="Darwin" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_C_COMPILER_ID="$CC" \
|
||||
-DCMAKE_CXX_COMPILER_ID="$CXX" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk $(get_sdk_name) -f ar)" \
|
||||
-DCMAKE_AS="$AS" \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp "${BUILD_DIR}"/libilbc.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libogg} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ogg.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+51
@@ -0,0 +1,51 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
x86*)
|
||||
ASM_OPTIONS=" --enable-intel-sse=yes"
|
||||
;;
|
||||
arm*)
|
||||
ASM_OPTIONS=" --enable-arm-neon=yes"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libpng} -eq 1 ]] || [[ $(is_gnu_config_files_up_to_date) == "0" ]]; then
|
||||
|
||||
# UPDATE CONFIG FILES TO SUPPORT APPLE ARCHITECTURES
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.guess "${BASEDIR}"/src/"${LIB_NAME}"/config.guess || return 1
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.sub "${BASEDIR}"/src/"${LIB_NAME}"/config.sub || return 1
|
||||
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
# WORKAROUND TO FIX ZLIB VERSION DETECTED - OCCURS ON XCODE 14.3.1
|
||||
if [[ -n "$DETECTED_IOS_SDK_VERSION" && $(compare_versions "$DETECTED_IOS_SDK_VERSION" "16.4") -ge 0 ]] ||
|
||||
[[ -n "$DETECTED_MACOS_SDK_VERSION" && $(compare_versions "$DETECTED_MACOS_SDK_VERSION" "13.3") -eq 0 ]] ||
|
||||
[[ -n "$DETECTED_TVOS_SDK_VERSION" && $(compare_versions "$DETECTED_TVOS_SDK_VERSION" "16.4") -ge 0 ]]; then
|
||||
${SED_INLINE} "s|ZLIB_VERNUM default .*|ZLIB_VERNUM default 0|g" "${BASEDIR}"/src/"${LIB_NAME}"/scripts/pnglibconf.dfa
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-unversioned-libpng-pc \
|
||||
--disable-unversioned-libpng-config \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libpng_package_config "1.6.40" || return 1
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libsamplerate} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-alsa \
|
||||
--disable-fftw \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# WORKAROUND TO DISABLE BUILDING OF EXAMPLES AND TESTS
|
||||
${SED_INLINE} 's/^examples_/#examples_/g' "${BASEDIR}"/src/"${LIB_NAME}"/Makefile || return 1
|
||||
${SED_INLINE} 's/^tests_/#tests_/g' "${BASEDIR}"/src/"${LIB_NAME}"/Makefile || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libsndfile} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-sqlite \
|
||||
--disable-alsa \
|
||||
--disable-full-suite \
|
||||
--disable-external-libs \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libtheora} -eq 1 ]]; then
|
||||
|
||||
# WORKAROUND NOT TO RUN CONFIGURE AT THE END OF autogen.sh
|
||||
${SED_INLINE} 's/$srcdir\/configure/#$srcdir\/configure/g' "${BASEDIR}"/src/"${LIB_NAME}"/autogen.sh || return 1
|
||||
|
||||
./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-examples \
|
||||
--disable-telemetry \
|
||||
--disable-sdltest \
|
||||
--disable-valgrind-testing \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp theoradec.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp theoraenc.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp theora.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+46
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm*)
|
||||
ASM_OPTIONS="-DSSE2_FOUND=0 -DSSE3_FOUND=0 -DSSSE3_FOUND=0 -DSSE4_1_FOUND=0"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS=""
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
# WORKAROUND TO DETECT ASM FLAGS PROPERLY
|
||||
${SED_INLINE} 's/ ${CPUINFO}/ "${CPUINFO}"/g' "${BASEDIR}"/src/"${LIB_NAME}"/CMakeModules/FindSSE.cmake 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_C_COMPILER="$CC" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk $(get_sdk_name) -f ar)" \
|
||||
-DCMAKE_AS="$AS" \
|
||||
-DUSE_OMP=0 \
|
||||
${ASM_OPTIONS} \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp vidstab.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+36
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUNDS
|
||||
# -mno-ieee-fp OPTION IS NOT COMPATIBLE WITH clang. REMOVING IT
|
||||
${SED_INLINE} 's/\-mno-ieee-fp//g' "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac || return 1
|
||||
|
||||
# ALWAYS REGENERATE BUILD FILES - NECESSARY TO APPLY THE WORKAROUNDS
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
# WORKAROUND TO REMOVE -force_cpusubtype_ALL FLAG DUE TO THE FOLLOWING ERROR
|
||||
# ld: -force_cpusubtype_ALL and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together
|
||||
${SED_INLINE} 's/-force_cpusubtype_ALL//g' ${BASEDIR}/src/${LIB_NAME}/configure
|
||||
|
||||
PKG_CONFIG= ./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--with-ogg-includes="${LIB_INSTALL_BASE}"/libogg/include \
|
||||
--with-ogg-libraries="${LIB_INSTALL_BASE}"/libogg/lib \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-docs \
|
||||
--disable-examples \
|
||||
--disable-oggtest \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libvorbis_package_config "1.3.7" || return 1
|
||||
Executable
+101
@@ -0,0 +1,101 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
TARGET=""
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
armv7 | armv7s)
|
||||
|
||||
# note that --disable-runtime-cpu-detect is used for arm
|
||||
# using --enable-runtime-cpu-detect cause the following error
|
||||
# vpx_ports/arm_cpudetect.c:151:2: error: "--enable-runtime-cpu-detect selected, but no CPU detection method " "available for your platform. Reconfigure with --disable-runtime-cpu-detect."
|
||||
|
||||
TARGET="$(get_target_cpu)-darwin-gcc"
|
||||
ASM_OPTIONS="--disable-runtime-cpu-detect --enable-neon --enable-neon-asm"
|
||||
;;
|
||||
arm64*)
|
||||
TARGET="arm64-darwin-gcc"
|
||||
|
||||
# --enable-neon-asm option not added because it causes the following error
|
||||
# vpx_dsp/arm/intrapred_neon_asm.asm.S:653:26: error: vector register expected
|
||||
# vst1.64
|
||||
ASM_OPTIONS="--disable-runtime-cpu-detect --enable-neon"
|
||||
;;
|
||||
i386)
|
||||
TARGET="x86-iphonesimulator-gcc"
|
||||
ASM_OPTIONS="--enable-runtime-cpu-detect --disable-avx512"
|
||||
;;
|
||||
x86-64*)
|
||||
if [[ ${ARCH} == "x86-64-mac-catalyst" ]]; then
|
||||
TARGET="x86_64-macosx-gcc"
|
||||
else
|
||||
|
||||
# WORKAROUND TO USE A VALID TARGET FOR LIBVPX BUILD SCRIPTS
|
||||
# HAS NO EFFECT ON THE OUTPUT
|
||||
# CUSTOMIZED LIBVPX BUILD SCRIPTS (FOR tvOS, macOS) USE BUILD FLAGS SET BY FFMPEG KIT
|
||||
TARGET="x86_64-iphonesimulator-gcc"
|
||||
fi
|
||||
ASM_OPTIONS="--enable-runtime-cpu-detect --disable-avx512 --disable-sse --disable-sse2 --disable-mmx"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# NOTE THAT RECONFIGURE IS NOT SUPPORTED
|
||||
|
||||
# WORKAROUND TO FIX BUILD OPTIONS DEFINED IN configure.sh
|
||||
case ${ARCH} in
|
||||
x86-64-mac-catalyst)
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/libvpx/configure.x86_64_mac_catalyst.sh "${BASEDIR}"/src/"${LIB_NAME}"/build/make/configure.sh || return 1
|
||||
;;
|
||||
*)
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/libvpx/configure.sh "${BASEDIR}"/src/"${LIB_NAME}"/build/make/configure.sh || return 1
|
||||
;;
|
||||
esac
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--target="${TARGET}" \
|
||||
--extra-cflags="${CFLAGS}" \
|
||||
--extra-cxxflags="${CXXFLAGS}" \
|
||||
--as=yasm \
|
||||
--log=yes \
|
||||
--enable-libs \
|
||||
--enable-install-libs \
|
||||
--enable-pic \
|
||||
--enable-optimizations \
|
||||
--enable-better-hw-compatibility \
|
||||
--enable-vp9-highbitdepth \
|
||||
${ASM_OPTIONS} \
|
||||
--enable-vp8 \
|
||||
--enable-vp9 \
|
||||
--enable-multithread \
|
||||
--enable-spatial-resampling \
|
||||
--enable-small \
|
||||
--enable-static \
|
||||
--disable-realtime-only \
|
||||
--disable-shared \
|
||||
--disable-debug \
|
||||
--disable-gprof \
|
||||
--disable-gcov \
|
||||
--disable-ccache \
|
||||
--disable-install-bins \
|
||||
--disable-install-srcs \
|
||||
--disable-install-docs \
|
||||
--disable-docs \
|
||||
--disable-tools \
|
||||
--disable-examples \
|
||||
--disable-unit-tests \
|
||||
--disable-decode-perf-tests \
|
||||
--disable-encode-perf-tests \
|
||||
--disable-codec-srcs \
|
||||
--disable-debug-libs \
|
||||
--disable-internal-stats || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm*)
|
||||
ASM_OPTIONS="--enable-neon --enable-neon-rtcd"
|
||||
;;
|
||||
x86-64-mac-catalyst)
|
||||
ASM_OPTIONS="--disable-sse2 --disable-sse4.1"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS="--enable-sse2 --enable-sse4.1"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libwebp} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-dependency-tracking \
|
||||
--enable-libwebpmux \
|
||||
${ASM_OPTIONS} \
|
||||
--with-pngincludedir="${LIB_INSTALL_BASE}/libpng/include" \
|
||||
--with-pnglibdir="${LIB_INSTALL_BASE}/libpng/lib" \
|
||||
--with-jpegincludedir="${LIB_INSTALL_BASE}/jpeg/include" \
|
||||
--with-jpeglibdir="${LIB_INSTALL_BASE}/jpeg/lib" \
|
||||
--with-gifincludedir="${LIB_INSTALL_BASE}/giflib/include" \
|
||||
--with-giflibdir="${LIB_INSTALL_BASE}/giflib/lib" \
|
||||
--with-tiffincludedir="${LIB_INSTALL_BASE}/tiff/include" \
|
||||
--with-tifflibdir="${LIB_INSTALL_BASE}/tiff/lib" \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/src/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/src/demux/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/src/mux/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/sharpyuv/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
|
||||
make install || return 1
|
||||
Executable
+33
@@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_libxml2} -eq 1 ]]; then
|
||||
${SED_INLINE} 's|^AC_PREREQ|#AC_PREREQ|g' "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac || return 1
|
||||
${SED_INLINE} 's|AM_INIT_AUTOMAKE(\[[0-9.]* |AM_INIT_AUTOMAKE(\[|g' "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac || return 1
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--with-zlib \
|
||||
--with-iconv="${SDK_PATH}"/usr \
|
||||
--with-sax1 \
|
||||
--without-python \
|
||||
--without-debug \
|
||||
--without-lzma \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_libxml2_package_config "2.11.4" || return 1
|
||||
Executable
+50
@@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm*)
|
||||
ASM_OPTIONS="--enable-arm-neon"
|
||||
;;
|
||||
i386 | x86-64*)
|
||||
ASM_OPTIONS="--enable-x86-aesni"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_nettle} -eq 1 ]]; then
|
||||
|
||||
# WORKAROUND TO FIX BUILD SYSTEM COMPILER ON macOS
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/nettle/aclocal.m4 "${BASEDIR}"/src/"${LIB_NAME}"/aclocal.m4
|
||||
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
# UPDATE CONFIG FILES TO SUPPORT APPLE ARCHITECTURES
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.guess "${BASEDIR}"/src/"${LIB_NAME}"/config.guess || return 1
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.sub "${BASEDIR}"/src/"${LIB_NAME}"/config.sub || return 1
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--enable-pic \
|
||||
--enable-static \
|
||||
--with-include-path="${LIB_INSTALL_BASE}"/gmp/include \
|
||||
--with-lib-path="${LIB_INSTALL_BASE}"/gmp/lib \
|
||||
--disable-shared \
|
||||
--disable-mini-gmp \
|
||||
--disable-assembler \
|
||||
--disable-openssl \
|
||||
--disable-gcov \
|
||||
--disable-documentation \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
case ${ARCH} in
|
||||
x86-64 | x86-64-mac-catalyst)
|
||||
export CXX="xcrun --sdk $(get_sdk_name) clang++ -arch x86_64"
|
||||
;;
|
||||
arm64-simulator | arm64-mac-catalyst)
|
||||
export CXX="xcrun --sdk $(get_sdk_name) clang++ -arch arm64"
|
||||
;;
|
||||
*)
|
||||
export CXX="xcrun --sdk $(get_sdk_name) clang++ -arch ${ARCH}"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_opencore_amr} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp amrnb/*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+64
@@ -0,0 +1,64 @@
|
||||
#!/bin/bash
|
||||
|
||||
get_local_asm_arch() {
|
||||
case ${ARCH} in
|
||||
armv7*)
|
||||
echo "arm"
|
||||
;;
|
||||
arm64*)
|
||||
echo "arm64"
|
||||
;;
|
||||
x86-64*)
|
||||
echo "x86_64"
|
||||
;;
|
||||
*)
|
||||
echo "${ARCH}"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# UPDATE BUILD FLAGS AND SET BUILD OPTIONS
|
||||
ASM_OPTIONS="OS=darwin"
|
||||
case ${ARCH} in
|
||||
armv7 | armv7s)
|
||||
CFLAGS+=" -DHAVE_NEON"
|
||||
;;
|
||||
arm64*)
|
||||
CFLAGS+=" -DHAVE_NEON_AARCH64"
|
||||
;;
|
||||
*)
|
||||
CFLAGS+=" -DHAVE_AVX2"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make clean 2>/dev/null 1>/dev/null
|
||||
|
||||
# DISCARD APPLE WORKAROUNDS
|
||||
git checkout "${BASEDIR}"/src/"${LIB_NAME}"/build || return 1
|
||||
git checkout "${BASEDIR}"/src/"${LIB_NAME}"/codec || return 1
|
||||
|
||||
# MAKE SURE THAT ASM IS ENABLED FOR ALL IOS ARCHITECTURES - EXCEPT x86-64
|
||||
${SED_INLINE} 's/arm64 aarch64/arm64% aarch64/g' ${BASEDIR}/src/${LIB_NAME}/build/arch.mk
|
||||
${SED_INLINE} 's/%86 x86_64,/%86 x86_64 x86-64%,/g' ${BASEDIR}/src/${LIB_NAME}/build/arch.mk
|
||||
${SED_INLINE} 's/filter-out arm64,/filter-out arm64%,/g' ${BASEDIR}/src/${LIB_NAME}/build/arch.mk
|
||||
${SED_INLINE} 's/CFLAGS += -DHAVE_NEON/#CFLAGS += -DHAVE_NEON/g' ${BASEDIR}/src/${LIB_NAME}/build/arch.mk
|
||||
${SED_INLINE} 's/ifeq (\$(ASM_ARCH), arm64)/ifneq (\$(filter arm64%, \$(ASM_ARCH)),)/g' ${BASEDIR}/src/${LIB_NAME}/codec/common/targets.mk
|
||||
|
||||
make -j$(get_cpu_count) \
|
||||
ASM_ARCH="$(get_local_asm_arch)" \
|
||||
ARCH="${ARCH}" \
|
||||
CC="${CC}" \
|
||||
CFLAGS="$CFLAGS" \
|
||||
CXX="${CXX}" \
|
||||
CXXFLAGS="${CXXFLAGS}" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
${ASM_OPTIONS} \
|
||||
PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
SDK_MIN="${IOS_MIN_VERSION}" \
|
||||
SDKROOT="${SDK_PATH}" \
|
||||
STATIC_LDFLAGS="-lc++" \
|
||||
install-static || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ${BASEDIR}/src/${LIB_NAME}/openh264-static.pc ${INSTALL_PKG_CONFIG_DIR}/openh264.pc || return 1
|
||||
@@ -0,0 +1,49 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ ${FFMPEG_KIT_BUILD_TYPE} == "tvos" ]]; then
|
||||
|
||||
# openssl does not support tvos yet
|
||||
echo -e "ERROR: openssl is not supported on $FFMPEG_KIT_BUILD_TYPE platform.\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
return 200
|
||||
fi
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm64 | arm64e | arm64-mac-catalyst | arm64-simulator | x86-64 | x86-64-mac-catalyst)
|
||||
ASM_OPTIONS="enable-ec_nistp_64_gcc_128"
|
||||
;;
|
||||
i386)
|
||||
ASM_OPTIONS="386"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_openssl} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
INT128_AVAILABLE=$($CC -dM -E - </dev/null 2>>"${BASEDIR}"/build.log | grep __SIZEOF_INT128__)
|
||||
|
||||
echo -e "INFO: __uint128_t detection output: $INT128_AVAILABLE\n" 1>>"${BASEDIR}"/build.log 2>&1
|
||||
|
||||
./Configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
zlib \
|
||||
no-shared \
|
||||
no-engine \
|
||||
no-dso \
|
||||
no-legacy \
|
||||
${ASM_OPTIONS} \
|
||||
no-tests \
|
||||
iphoneos-cross || return 1
|
||||
|
||||
make -j$(get_cpu_count) build_sw || return 1
|
||||
|
||||
make install_sw install_ssldirs || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_opus} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--enable-rtcd \
|
||||
--enable-asm \
|
||||
--enable-check-asm \
|
||||
--enable-custom-modes \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--disable-doc \
|
||||
--disable-extra-programs \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./opus.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUND TO DISABLE OPTIONAL FEATURES MANUALLY, SINCE ./configure DOES NOT PROVIDE OPTIONS FOR THEM
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/rubberband/configure.ac "${BASEDIR}"/src/"${LIB_NAME}"/configure.ac || return 1
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/rubberband/Makefile.ios.in "${BASEDIR}"/src/"${LIB_NAME}"/Makefile.in || return 1
|
||||
|
||||
# WORKAROUND TO FIX PACKAGE CONFIG FILE DEPENDENCIES
|
||||
overwrite_file "${BASEDIR}"/tools/patch/make/rubberband/rubberband.pc.in "${BASEDIR}"/src/"${LIB_NAME}"/rubberband.pc.in || return 1
|
||||
${SED_INLINE} 's/%DEPENDENCIES%/sndfile, samplerate/g' "${BASEDIR}"/src/"${LIB_NAME}"/rubberband.pc.in || return 1
|
||||
|
||||
# ALWAYS REGENERATE BUILD FILES - NECESSARY TO APPLY THE WORKAROUNDS
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make AR="$AR" -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+47
@@ -0,0 +1,47 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
*-mac-catalyst)
|
||||
ASM_OPTIONS="--disable-video-cocoa --disable-render-metal --disable-diskaudio"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUND TO FIX AUTOMATICALLY ENABLED LIBRARIES IN CONFIGURE
|
||||
overwrite_file "${BASEDIR}/tools/patch/make/sdl/configure.in" "${BASEDIR}/src/${LIB_NAME}/configure.in"
|
||||
|
||||
# ALWAYS REGENERATE BUILD FILES - NECESSARY TO APPLY THE WORKAROUNDS
|
||||
./autogen.sh || return 1
|
||||
|
||||
# WORKAROUND TO EXCLUDE libunwind.h ON LTS BUILDS
|
||||
if [[ -n ${FFMPEG_KIT_LTS_BUILD} ]]; then
|
||||
export ac_cv_header_libunwind_h=no
|
||||
fi
|
||||
|
||||
# UPDATE CONFIG FILES TO SUPPORT APPLE ARCHITECTURES
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.guess "${BASEDIR}"/src/"${LIB_NAME}"/build-scripts/config.guess || return 1
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.sub "${BASEDIR}"/src/"${LIB_NAME}"/build-scripts/config.sub || return 1
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-video-opengl \
|
||||
--disable-video-x11 \
|
||||
--disable-joystick \
|
||||
--disable-haptic \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_shine} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export CFLAGS="$(get_cflags "${LIB_NAME}") -I${SDK_PATH}/usr/include"
|
||||
export LDFLAGS="$(get_ldflags ${LIB_NAME}) -L${SDK_PATH}/usr/lib"
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_CXX_COMPILER="$CXX" \
|
||||
-DCMAKE_C_COMPILER="$CC" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk $(get_sdk_name) -f ar)" \
|
||||
-DCMAKE_AS="$AS" \
|
||||
-DSNAPPY_BUILD_TESTS=0 \
|
||||
-DSNAPPY_BUILD_BENCHMARKS=0 \
|
||||
-DHAVE_LIBLZO2=0 \
|
||||
-DHAVE_LIBZ=1 \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_snappy_package_config "1.1.9" || return 1
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
arm64*)
|
||||
ASM_OPTIONS="-DWITH_CR32S=0 -DWITH_CR64S=0"
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_C_COMPILER="$CC" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk $(get_sdk_name) -f ar)" \
|
||||
-DCMAKE_AS="$AS" \
|
||||
-DBUILD_TESTS=0 \
|
||||
-DWITH_DEV_TRACE=0 \
|
||||
-DWITH_LSR_BINDINGS=0 \
|
||||
-DWITH_OPENMP=0 \
|
||||
${ASM_OPTIONS} \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
-DBUILD_SHARED_LIBS=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_soxr_package_config "0.1.3" || return 1
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
x86*)
|
||||
ASM_OPTIONS="--enable-sse"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_soxr} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
${ASM_OPTIONS} \
|
||||
--disable-shared \
|
||||
--disable-binaries \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
*-mac-catalyst)
|
||||
ASM_OPTIONS="-DENABLE_MONOTONIC_CLOCK=0"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS="-DENABLE_MONOTONIC_CLOCK=1"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
git clean -dfx 2>/dev/null 1>/dev/null
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DUSE_ENCLIB=openssl \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_CXX_COMPILER="$CXX" \
|
||||
-DCMAKE_C_COMPILER="$CC" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk $(get_sdk_name) -f ar)" \
|
||||
-DCMAKE_AS="$AS" \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
${ASM_OPTIONS} \
|
||||
-DENABLE_STDCXX_SYNC=1 \
|
||||
-DENABLE_CXX11=1 \
|
||||
-DUSE_OPENSSL_PC=1 \
|
||||
-DENABLE_DEBUG=0 \
|
||||
-DENABLE_LOGGING=0 \
|
||||
-DENABLE_HEAVY_LOGGING=0 \
|
||||
-DENABLE_APPS=0 \
|
||||
-DENABLE_SHARED=0 "${BASEDIR}"/src/"${LIB_NAME}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
PKG_CONFIG_PATH=${INSTALL_PKG_CONFIG_DIR}
|
||||
export LEPTONICA_CFLAGS=" $(pkg-config --cflags lept 2>>"${BASEDIR}"/build.log)"
|
||||
export LEPTONICA_LIBS=" $(pkg-config --libs lept 2>>"${BASEDIR}"/build.log)"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_tesseract} -eq 1 ]]; then
|
||||
./autogen.sh 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--without-tensorflow \
|
||||
--without-curl \
|
||||
--without-archive \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-debug \
|
||||
--disable-graphics \
|
||||
--disable-openmp \
|
||||
--disable-tessdata-prefix \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# WORKAROUNDS
|
||||
git checkout ${BASEDIR}/src/${LIB_NAME}/libtool 1>>"${BASEDIR}"/build.log 2>&1
|
||||
if [[ ${FFMPEG_KIT_BUILD_TYPE} != "macos" ]]; then
|
||||
|
||||
# WORKAROUND TO REMOVE -bind_at_load FLAG WHICH CAN NOT BE USED WHEN BITCODE IS ENABLED
|
||||
${SED_INLINE} 's/$wl-bind_at_load//g' ${BASEDIR}/src/${LIB_NAME}/libtool
|
||||
fi
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_tesseract_package_config "5.3.2" || return 1
|
||||
Executable
+36
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_tiff} -eq 1 ]] || [[ $(is_gnu_config_files_up_to_date) == "0" ]]; then
|
||||
|
||||
# UPDATE CONFIG FILES TO SUPPORT APPLE ARCHITECTURES
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.guess "${BASEDIR}"/src/"${LIB_NAME}"/config.guess || return 1
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.sub "${BASEDIR}"/src/"${LIB_NAME}"/config.sub || return 1
|
||||
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--with-jpeg-include-dir="${LIB_INSTALL_BASE}"/jpeg/include \
|
||||
--with-jpeg-lib-dir="${LIB_INSTALL_BASE}"/jpeg/lib \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--disable-cxx \
|
||||
--disable-win32-io \
|
||||
--disable-lzma \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
export SNDFILE_CFLAGS="$(pkg-config --cflags sndfile)"
|
||||
export SNDFILE_LIBS="$(pkg-config --libs --static sndfile)"
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_twolame} -eq 1 ]]; then
|
||||
NOCONFIGURE=1 ./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
# WORKAROUND TO DISABLE BUILDING OF DOCBOOK - BUILD SCRIPTS DO NOT GENERATE A TARGET FOR IT
|
||||
${SED_INLINE} 's/dist_man_MANS = .*/dist_man_MANS =/g' "${BASEDIR}"/src/"${LIB_NAME}"/doc/Makefile || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+36
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
# UPDATE BUILD FLAGS
|
||||
case ${ARCH} in
|
||||
x86-64 | x86-64-mac-catalyst)
|
||||
export CXX="xcrun --sdk $(get_sdk_name) clang++ -arch x86_64"
|
||||
;;
|
||||
*)
|
||||
export CXX="xcrun --sdk $(get_sdk_name) clang++ -arch ${ARCH}"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_vo_amrwbenc} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
--disable-maintainer-mode \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./*.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+52
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
DEBUG_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
i386 | x86-64*)
|
||||
ASM_OPTIONS="--disable-asm"
|
||||
|
||||
if ! [ -x "$(command -v nasm)" ]; then
|
||||
echo -e "\n(*) nasm command not found\n"
|
||||
return 1
|
||||
fi
|
||||
|
||||
export AS="$(command -v nasm)"
|
||||
;;
|
||||
esac
|
||||
if [[ -n ${FFMPEG_KIT_DEBUG} ]]; then
|
||||
DEBUG_OPTIONS="--enable-debug"
|
||||
fi
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_x264} -eq 1 ]]; then
|
||||
autoreconf_library "${LIB_NAME}" 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
fi
|
||||
|
||||
# UPDATE CONFIG FILES TO SUPPORT APPLE ARCHITECTURES
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.guess "${BASEDIR}"/src/"${LIB_NAME}"/config.guess || return 1
|
||||
overwrite_file "${FFMPEG_KIT_TMPDIR}"/source/config/config.sub "${BASEDIR}"/src/"${LIB_NAME}"/config.sub || return 1
|
||||
|
||||
# WORKAROUND TO FIX arm64 BUILDS
|
||||
${SED_INLINE} 's/\-arch arm64//g' "${BASEDIR}"/src/"${LIB_NAME}"/configure 1>>"${BASEDIR}"/build.log 2>&1 || return 1
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--enable-pic \
|
||||
--sysroot=${SDK_PATH} \
|
||||
--enable-static \
|
||||
--disable-cli \
|
||||
${ASM_OPTIONS} \
|
||||
${DEBUG_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp x264.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+81
@@ -0,0 +1,81 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
case ${ARCH} in
|
||||
armv7 | armv7s)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=1 -DCROSS_COMPILE_ARM=1"
|
||||
;;
|
||||
arm64*)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=0 -DCROSS_COMPILE_ARM=1"
|
||||
;;
|
||||
x86-64-mac-catalyst)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=0 -DCROSS_COMPILE_ARM=0"
|
||||
;;
|
||||
i386)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=0 -DCROSS_COMPILE_ARM=0"
|
||||
;;
|
||||
*)
|
||||
ASM_OPTIONS="-DENABLE_ASSEMBLY=1 -DCROSS_COMPILE_ARM=0"
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir -p "${BUILD_DIR}" || return 1
|
||||
cd "${BUILD_DIR}" || return 1
|
||||
|
||||
# fix x86 and x86_64 assembly
|
||||
${SED_INLINE} 's/win64/macho64 -DPREFIX/g' ${BASEDIR}/src/x265/source/cmake/CMakeASM_NASMInformation.cmake
|
||||
${SED_INLINE} 's/win/macho/g' ${BASEDIR}/src/x265/source/cmake/CMakeASM_NASMInformation.cmake
|
||||
|
||||
# fixing constant shift
|
||||
${SED_INLINE} 's/lsr 16/lsr #16/g' ${BASEDIR}/src/x265/source/common/arm/blockcopy8.S
|
||||
|
||||
# fixing leading underscores
|
||||
${SED_INLINE} 's/function x265_/function _x265_/g' ${BASEDIR}/src/x265/source/common/arm/*.S
|
||||
${SED_INLINE} 's/ x265_/ _x265_/g' ${BASEDIR}/src/x265/source/common/arm/pixel-util.S
|
||||
|
||||
# fixing relocation errors
|
||||
${SED_INLINE} 's/sad12_mask:/sad12_mask_bytes:/g' ${BASEDIR}/src/x265/source/common/arm/sad-a.S
|
||||
${SED_INLINE} 's/g_lumaFilter:/g_lumaFilter_bytes:/g' ${BASEDIR}/src/x265/source/common/arm/ipfilter8.S
|
||||
${SED_INLINE} 's/g_chromaFilter:/g_chromaFilter_bytes:/g' ${BASEDIR}/src/x265/source/common/arm/ipfilter8.S
|
||||
${SED_INLINE} 's/\.text/.equ sad12_mask, .-sad12_mask_bytes\
|
||||
\
|
||||
.text/g' ${BASEDIR}/src/x265/source/common/arm/sad-a.S
|
||||
${SED_INLINE} 's/\.text/.equ g_lumaFilter, .-g_lumaFilter_bytes\
|
||||
.equ g_chromaFilter, .-g_chromaFilter_bytes\
|
||||
\
|
||||
.text/g' ${BASEDIR}/src/x265/source/common/arm/ipfilter8.S
|
||||
|
||||
# WORKAROUND TO USE A CUSTOM BUILD FILE
|
||||
overwrite_file "${BASEDIR}"/tools/patch/cmake/x265/CMakeLists.txt "${BASEDIR}"/src/"${LIB_NAME}"/source/CMakeLists.txt || return 1
|
||||
|
||||
cmake -Wno-dev \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=0 \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
|
||||
-DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
|
||||
-DCMAKE_SYSROOT="${SDK_PATH}" \
|
||||
-DCMAKE_FIND_ROOT_PATH="${SDK_PATH}" \
|
||||
-DCMAKE_OSX_SYSROOT="$(get_sdk_name)" \
|
||||
-DCMAKE_OSX_ARCHITECTURES="$(get_cmake_osx_architectures)" \
|
||||
-DCMAKE_SYSTEM_NAME="${CMAKE_SYSTEM_NAME}" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_INSTALL_PREFIX="${LIB_INSTALL_PREFIX}" \
|
||||
-DCMAKE_C_COMPILER="$CC" \
|
||||
-DCMAKE_CXX_COMPILER="$CXX" \
|
||||
-DCMAKE_LINKER="$LD" \
|
||||
-DCMAKE_AR="$(xcrun --sdk $(get_sdk_name) -f ar)" \
|
||||
-DCMAKE_AS="$AS" \
|
||||
-DSTATIC_LINK_CRT=1 \
|
||||
-DENABLE_PIC=1 \
|
||||
-DENABLE_CLI=0 \
|
||||
-DHIGH_BIT_DEPTH=1 \
|
||||
${ASM_OPTIONS} \
|
||||
-DCMAKE_SYSTEM_PROCESSOR="$(get_target_cpu)" \
|
||||
-DENABLE_SHARED=0 "${BASEDIR}"/src/"${LIB_NAME}"/source || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp x265.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Executable
+45
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd "${BASEDIR}"/src/"${LIB_NAME}"/"${LIB_NAME}"/build/generic || return 1
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
i386 | x86-64*)
|
||||
ASM_OPTIONS="--disable-assembly"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# WORKAROUNDS
|
||||
git checkout configure.in 1>>"${BASEDIR}"/build.log 2>&1
|
||||
if [[ ${FFMPEG_KIT_BUILD_TYPE} != "macos" ]]; then
|
||||
|
||||
# WORKAROUND TO FIX THE FOLLOWING ERROR
|
||||
# ld: -flat_namespace and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together
|
||||
${SED_INLINE} 's/ -flat_namespace//g' configure.in
|
||||
|
||||
# WORKAROUND TO FIX THE FOLLOWING ERROR
|
||||
# ld: -read_only_relocs and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together
|
||||
${SED_INLINE} 's/-Wl,-read_only_relocs,suppress//g' configure.in
|
||||
fi
|
||||
|
||||
# ALWAYS REGENERATE BUILD FILES - NECESSARY TO APPLY THE WORKAROUNDS
|
||||
./bootstrap.sh
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# CREATE PACKAGE CONFIG MANUALLY
|
||||
create_xvidcore_package_config "1.3.7" || return 1
|
||||
|
||||
# WORKAROUND TO REMOVE DYNAMIC LIBS
|
||||
rm -f "${LIB_INSTALL_PREFIX}"/lib/libxvidcore.dylib*
|
||||
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
# SET BUILD OPTIONS
|
||||
ASM_OPTIONS=""
|
||||
case ${ARCH} in
|
||||
armv7 | armv7s)
|
||||
ASM_OPTIONS="--disable-simd"
|
||||
;;
|
||||
esac
|
||||
|
||||
# ALWAYS CLEAN THE PREVIOUS BUILD
|
||||
make distclean 2>/dev/null 1>/dev/null
|
||||
|
||||
# REGENERATE BUILD FILES IF NECESSARY OR REQUESTED
|
||||
if [[ ! -f "${BASEDIR}"/src/"${LIB_NAME}"/configure ]] || [[ ${RECONF_zimg} -eq 1 ]]; then
|
||||
./autogen.sh || return 1
|
||||
fi
|
||||
|
||||
./configure \
|
||||
--prefix="${LIB_INSTALL_PREFIX}" \
|
||||
--with-pic \
|
||||
--with-sysroot="${SDK_PATH}" \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--disable-fast-install \
|
||||
${ASM_OPTIONS} \
|
||||
--host="${HOST}" || return 1
|
||||
|
||||
make -j$(get_cpu_count) || return 1
|
||||
|
||||
make install || return 1
|
||||
|
||||
# MANUALLY COPY PKG-CONFIG FILES
|
||||
cp ./zimg.pc "${INSTALL_PKG_CONFIG_DIR}" || return 1
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user