SHELL:=/bin/bash ubuntu1804: # sometimes got 404 on videolan/x264 #git clone https://code.videolan.org/videolan/x264 #git clone git://source.ffmpeg.org/ffmpeg.git # for this reason pushed them to my own github git clone https://github.com/rayburgemeestre/x264 git clone https://github.com/rayburgemeestre/ffmpeg bash ../ubuntu1804.sh make ffmpeg_impl make package-ubuntu1804 ubuntu2004: # sometimes got 404 on videolan/x264 #git clone https://code.videolan.org/videolan/x264 #git clone git://source.ffmpeg.org/ffmpeg.git git clone https://github.com/rayburgemeestre/x264 git clone https://github.com/rayburgemeestre/ffmpeg bash ../ubuntu2004.sh make ffmpeg_impl make package-ubuntu2004 bash ../ubuntu2004.sh chown $$(id -u):$$(id -g) . -R # fix permissions ubuntu2204: # sometimes got 404 on videolan/x264 #git clone https://code.videolan.org/videolan/x264 #git clone git://source.ffmpeg.org/ffmpeg.git git clone https://github.com/rayburgemeestre/x264 git clone https://github.com/rayburgemeestre/ffmpeg bash ../ubuntu2204.sh make ffmpeg_impl make package-ubuntu2204 bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions ubuntu2404: # sometimes got 404 on videolan/x264 #git clone https://code.videolan.org/videolan/x264 #git clone git://source.ffmpeg.org/ffmpeg.git git clone https://github.com/rayburgemeestre/x264 git clone https://github.com/rayburgemeestre/ffmpeg bash ../ubuntu2404.sh make ffmpeg_impl make package-ubuntu2404 bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions ffmpeg_impl: # see issue https://exerror.com/fatal-detected-dubious-ownership-in-repository/ git config --global --add safe.directory '*' apt-get update sudo apt-get install -y yasm sudo apt-get install -y nasm # apparently x264 switched to this mkdir -p x264_out mkdir -p ffmpeg_out cp -prv 5.1-0004-fix-binutils.patch ffmpeg/ pushd x264 && \ git checkout 2451a7282463f68e532f2eee090a70ab139bb3e7 # ^ parent of 71ed44c7312438fac7c5c5301e45522e57127db4, which is where they dropped support for: # libavcodec/libx264.c:282:9: error: 'x264_bit_depth' undeclared (first use in this function); did you mean 'x264_picture_t'? # if (x264_bit_depth > 8) # ^~~~~~~~~~~~~~ pushd x264 && \ ./configure --cxx=$$(which c++) --enable-static --enable-shared --prefix=$$(realpath $$PWD/../x264_out) && \ make -j $$(nproc) && \ make install pushd x264 && \ ./configure --cxx=$$(which c++) --enable-static --enable-shared && \ make -j $$(nproc) && \ make install pushd ffmpeg && git checkout n3.1 #git checkout 71052d85c16bd65fa1e3e01d9040f9a3925efd7a # or my muxing code won't work, they've modified the example since fba1592f35501bff0f28d7885f4128dfc7b82777 pushd ffmpeg && \ ./configure --cxx=$$(which c++) --enable-static --enable-shared --enable-libx264 --enable-gpl --disable-swresample --prefix=$$(realpath $$PWD/../ffmpeg_out) && \ sed -i.bak 's/HAVE_ARC4RANDOM 1/HAVE_ARC4RANDOM 0/g' ./config.h && \ patch libavcodec/x86/mathops.h 5.1-0004-fix-binutils.patch && \ make -j $$(nproc) && \ make install package-ubuntu1804: rm -rf out mkdir -p out/opt/cppse/build/x264 mkdir -p out/opt/cppse/build/ffmpeg cp -prv ./x264_out/* out/opt/cppse/build/x264/ cp -prv ./ffmpeg_out/* out/opt/cppse/build/ffmpeg/ rm -rf cppseffmpeg_*_amd64.deb docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre " --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out package-ubuntu2004: rm -rf out mkdir -p out/opt/cppse/build/x264 mkdir -p out/opt/cppse/build/ffmpeg cp -prv ./x264_out/* out/opt/cppse/build/x264/ cp -prv ./ffmpeg_out/* out/opt/cppse/build/ffmpeg/ rm -rf cppseffmpeg_*_amd64.deb docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre " --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out package-ubuntu2204: rm -rf out mkdir -p out/opt/cppse/build/x264 mkdir -p out/opt/cppse/build/ffmpeg cp -prv ./x264_out/* out/opt/cppse/build/x264/ cp -prv ./ffmpeg_out/* out/opt/cppse/build/ffmpeg/ rm -rf cppseffmpeg_*_amd64.deb docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre " --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out package-ubuntu2404: rm -rf out mkdir -p out/opt/cppse/build/x264 mkdir -p out/opt/cppse/build/ffmpeg cp -prv ./x264_out/* out/opt/cppse/build/x264/ cp -prv ./ffmpeg_out/* out/opt/cppse/build/ffmpeg/ rm -rf cppseffmpeg_*_amd64.deb docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v 1.1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre " --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out clean: rm -rf x264 rm -rf ffmpeg rm -rf out rm -rf x264_out rm -rf ffmpeg_out shell: FLAGS="-i --privileged" bash ../ubuntu2404.sh /bin/bash