You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

78 lines
3.6 KiB

#!/bin/bash
# 全局变量
#
# Config
CONFIG_SUPPORT_ALSA=true
CONFIG_SUPPORT_FFMPEG=true
CONFIG_SUPPORT_IFLYTOP_VOICE_PROCESS=false
CONFIG_SUPPORT_IXWEBSOCKET=true
# Code Begin
function prepare_ifytop_librelease_libs() {
cd ${IFLYBUILD_TARGET_LIBS_DIR}
libname=$1
linklibs=$2
url=$3
wget -c $3
tarname=$(basename $3)
# unpackname=tarname 去掉.tar.gz, 例如iflytopv1.3.0.tar.gz -> iflytopv1.3.0
unpackname=${tarname%.tar.gz}
tar -xvf $tarname >/dev/null
rm -rf ${LIBSDIR}/$libname
mv $unpackname ${LIBSDIR}/$libname
IFLYBUILD_TARGET_PUBLIC_LINK_DIRECTORIES="${IFLYBUILD_TARGET_PUBLIC_LINK_DIRECTORIES};${LIBSDIR}/$libname/lib"
IFLYBUILD_TARGET_PUBLIC_INCLUDE_DIRECTORIES="${IFLYBUILD_TARGET_PUBLIC_INCLUDE_DIRECTORIES};${LIBSDIR}/$libname/include"
IFLYBUILD_TARGET_PUBLIC_LINK_LIBS="${IFLYBUILD_TARGET_PUBLIC_LINK_LIBS};$linklibs"
}
cd ${IFLYBUILD_TARGET_LIBS_DIR}
# 下载依赖库
# CONFIG_SUPPORT_ALSA
if [ "$CONFIG_SUPPORT_ALSA" = true ]; then
wget -c "192.168.1.2:8021/sdk_firefly_rk3328_v2.5.1/buildtools/libasound2_dev1.1.3-5ubuntu0.6.tar.gz"
wget -c "192.168.1.2:8021/sdk_firefly_rk3328_v2.5.1/buildtools/libz.tar.gz"
rm -rf ${LIBSDIR}/alsa
rm -rf libasound2_dev1.1.3-5ubuntu0.6
tar -xvf libasound2_dev1.1.3-5ubuntu0.6.tar.gz >/dev/null
tar -xvf libz.tar.gz >/dev/null
mkdir -p ${LIBSDIR}/alsa/pkgconfig/
mkdir -p ${LIBSDIR}/alsa/include/sys/
mkdir -p ${LIBSDIR}/alsa/lib/
mkdir -p ${LIBSDIR}/alsa/include/sys/
mv libasound2_dev1.1.3-5ubuntu0.6/unpack/usr/lib/aarch64-linux-gnu/libasound.* ${LIBSDIR}/alsa/lib/
mv libasound2_dev1.1.3-5ubuntu0.6/unpack/usr/lib/aarch64-linux-gnu/pkgconfig/alsa.pc ${LIBSDIR}/alsa/pkgconfig/
mv libasound2_dev1.1.3-5ubuntu0.6/unpack/usr/include/alsa ${LIBSDIR}/alsa/include/
mv libasound2_dev1.1.3-5ubuntu0.6/unpack/usr/include/sys/* ${LIBSDIR}/alsa/include/sys/
mv libz.so.1 ${LIBSDIR}/alsa/lib/
IFLYBUILD_TARGET_PUBLIC_LINK_DIRECTORIES="${IFLYBUILD_TARGET_PUBLIC_LINK_DIRECTORIES};${LIBSDIR}/alsa/lib"
IFLYBUILD_TARGET_PUBLIC_INCLUDE_DIRECTORIES="${IFLYBUILD_TARGET_PUBLIC_INCLUDE_DIRECTORIES};${LIBSDIR}/alsa/include"
IFLYBUILD_TARGET_PUBLIC_LINK_LIBS="${IFLYBUILD_TARGET_PUBLIC_LINK_LIBS};asound"
fi
# CONFIG_SUPPORT_FFMPEG
if [ "$CONFIG_SUPPORT_FFMPEG" = true ]; then
wget -c "192.168.1.2:8021/sdk_firefly_rk3328_v2.5.1/buildtools/ffmpeg-4.1.10-aarch64-20230301.tar.gz"
rm -rf ${LIBSDIR}/ffmpeg
tar -xvf ffmpeg-4.1.10-aarch64-20230301.tar.gz >/dev/null
mv ffmpeg-4.1.10-aarch64-20230301 ${LIBSDIR}/ffmpeg
IFLYBUILD_TARGET_PUBLIC_LINK_DIRECTORIES="${IFLYBUILD_TARGET_PUBLIC_LINK_DIRECTORIES};${LIBSDIR}/ffmpeg/lib"
IFLYBUILD_TARGET_PUBLIC_INCLUDE_DIRECTORIES="${IFLYBUILD_TARGET_PUBLIC_INCLUDE_DIRECTORIES};${LIBSDIR}/ffmpeg/include"
IFLYBUILD_TARGET_PUBLIC_LINK_LIBS="${IFLYBUILD_TARGET_PUBLIC_LINK_LIBS};avcodec;avdevice;avfilter;avformat;avutil;swresample;swscale"
fi
# CONFIG_SUPPORT_IFLYTOP_VOICE_PROCESS
if [ "$CONFIG_SUPPORT_IFLYTOP_VOICE_PROCESS" = true ]; then
prepare_ifytop_librelease_libs libiflytop_voice_process "iflytopvoice;NE10_static" "http://iflytop.local:8021/zlibrelease/libiflytop_voice_process/libiflytop_voice_process_v1.0_aarch64_ubuntu18.04_static_0.tar.gz"
fi
if [ "$CONFIG_SUPPORT_IXWEBSOCKET" = true ]; then
prepare_ifytop_librelease_libs libixwebsocket "ixwebsocket" "http://iflytop.local:8021/zlibrelease/libixwebsocket/libixwebsocket_v11.4.3_aarch64_static_ubuntu18.04_0.tar.gz"
fi
IFLYBUILD_TARGET_C_COMPILER=aarch64-linux-gnu-gcc
IFLYBUILD_TARGET_CXX_COMPILER=aarch64-linux-gnu-g++