build_ffmpeg.sh 966 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/bin/sh
  2. cmd=$1
  3. PWD=`pwd`
  4. PLATFORM=riscvlinux
  5. FFMPEG_OUT=${PWD}/ffmpeg
  6. FFMPEG_SRC=${PWD}/../ffmpeg
  7. CONFIG_SCRIPT=config_ffmpeg.sh
  8. CONFIG_SCRIPT_PATH=${FFMPEG_SRC}/${CONFIG_SCRIPT}
  9. FFMPEG_INC=${FFMPEG_OUT}/include
  10. FFMPEG_LIB=${FFMPEG_OUT}/lib
  11. FFMPEG_BIN=${FFMPEG_OUT}/bin
  12. FFMPEG_SHARE=${FFMPEG_OUT}/share
  13. FFMPEG_VERSION="4.2.2"
  14. CPU_CORE=`cat /proc/cpuinfo |grep "processor"|wc -l`
  15. if [ $1 == "clean" ];then #clean
  16. if [ -f ${FFMPEG_SRC}/ffmpeg-${FFMPEG_VERSION} ];then
  17. cd ${FFMPEG_SRC}/ffmpeg-${FFMPEG_VERSION}
  18. make distclean
  19. fi
  20. rm -rf $FFMPEG_INC $FFMPEG_LIB $FFMPEG_BIN $FFMPEG_SHARE $FFMPEG_SRC/ffmpeg-${FFMPEG_VERSION}
  21. exit
  22. else #build
  23. cd $FFMPEG_SRC
  24. tar -xvf ffmpeg-${FFMPEG_VERSION}.tar.gz
  25. cd ffmpeg-${FFMPEG_VERSION}
  26. cp $CONFIG_SCRIPT_PATH .
  27. ./$CONFIG_SCRIPT $FFMPEG_OUT
  28. make -j${CPU_CORE} && make install
  29. fi
  30. if [ ! -d ${FFMPEG_LIB}/${PLATFORM} ];then
  31. mkdir ${FFMPEG_LIB}/${PLATFORM}
  32. fi
  33. mv $FFMPEG_LIB/*.a ${FFMPEG_LIB}/${PLATFORM}