@@ -32,25 +32,25 @@ runs:
3232 echo "HOME=$HOME" >> $GITHUB_ENV
3333 fi
3434 cd $HOME
35-
35+
3636 # Free disk space by removing some unused system components
3737 $SUDO rm -rf /usr/local/lib/android
3838 $SUDO rm -rf /usr/share/dotnet
39-
39+
4040 # Allocate a swapfile on Linux as it's not enabled by default. Needed for pytorch and mkl.
4141 $SUDO fallocate -l 4GB /swapfile
4242 $SUDO chmod 600 /swapfile
4343 $SUDO mkswap /swapfile
4444 $SUDO swapon /swapfile
45-
45+
4646 mkdir -p .ccache
4747 echo "max_size = 2.0G" > .ccache/ccache.conf
4848 echo "hash_dir = false" >> .ccache/ccache.conf
4949 echo "sloppiness = file_macro,include_file_ctime,include_file_mtime,pch_defines,time_macros" >> .ccache/ccache.conf
50-
50+
5151 export ARCH=amd64
5252 export PREFIX=x86_64-linux-gnu
53- if [[ "$CI_DEPLOY_PLATFORM" == "linux-armhf " ]]; then
53+ if [[ "$CI_DEPLOY_PLATFORM" == "linux-arm " ]]; then
5454 export ARCH=armhf
5555 export PREFIX=arm-linux-gnueabihf
5656 export USERLAND_BUILDME="buildme"
@@ -84,79 +84,70 @@ runs:
8484 fi
8585 echo "ARCH=$ARCH" >> $GITHUB_ENV
8686 echo "PREFIX=$PREFIX" >> $GITHUB_ENV
87-
87+
8888 $SUDO dpkg --list
89-
89+
9090 $SUDO apt-get update
9191 $SUDO apt-get -y install gnupg
9292 source /etc/os-release
9393 export CODENAME=$UBUNTU_CODENAME
94-
94+
9595 if [[ ! "$ARCH" == "amd64" ]]; then
96- # https://github.com/actions/runner-images/issues/675
96+ # https://github.com/actions/runner-images/issues/675
9797 $SUDO gem install apt-spy2
9898 $SUDO apt-spy2 check
9999 $SUDO apt-spy2 fix --commit
100100 $SUDO sed -i 's/azure\.//' /etc/apt/apt-mirrors.txt /etc/apt/sources.list
101101 $SUDO cat /etc/apt/apt-mirrors.txt /etc/apt/sources.list
102102 $SUDO apt-get update
103-
104- # https://github.com/actions/runner-images/issues/4589
103+
104+ # https://github.com/actions/runner-images/issues/4589
105105 $SUDO apt-add-repository -y ppa:ondrej/php
106106 $SUDO apt-get -y install ppa-purge
107107 $SUDO ppa-purge -y ppa:ondrej/php
108108 fi
109-
109+
110110 if [[ "$ARCH" == "i386" ]]; then
111111 $SUDO dpkg --add-architecture $ARCH
112112 TOOLCHAIN="gcc-$PREFIX g++-$PREFIX gfortran-$PREFIX"
113113 elif [[ ! "$ARCH" == "amd64" ]]; then
114+ echo "Adding $ARCH architecture"
114115 $SUDO dpkg --add-architecture $ARCH
115116 $SUDO sed -i 's/deb http/deb [arch=amd64] http/g' /etc/apt/sources.list
117+ $SUDO sed -i 's/deb mirror/deb [arch=amd64] mirror/g' /etc/apt/sources.list
116118 $SUDO echo deb [arch=$ARCH] http://ports.ubuntu.com/ubuntu-ports $CODENAME main restricted universe multiverse | $SUDO tee -a /etc/apt/sources.list
117119 $SUDO echo deb [arch=$ARCH] http://ports.ubuntu.com/ubuntu-ports $CODENAME-updates main restricted universe multiverse | $SUDO tee -a /etc/apt/sources.list
118120 $SUDO echo deb [arch=$ARCH] http://ports.ubuntu.com/ubuntu-ports $CODENAME-backports main restricted universe multiverse | $SUDO tee -a /etc/apt/sources.list
119121 $SUDO echo deb [arch=$ARCH] http://ports.ubuntu.com/ubuntu-ports $CODENAME-security main restricted universe multiverse | $SUDO tee -a /etc/apt/sources.list
120122 TOOLCHAIN="gcc-$PREFIX g++-$PREFIX gfortran-$PREFIX linux-libc-dev-$ARCH-cross binutils-multiarch"
121123 fi
122- # $SUDO echo deb [arch=amd64] https://ppa.launchpad.net/openjdk-r/ppa/ubuntu $CODENAME main | $SUDO tee -a /etc/apt/sources.list
123- # $SUDO echo deb [arch=amd64] https://ppa.launchpad.net/deadsnakes/ppa/ubuntu $CODENAME main | $SUDO tee -a /etc/apt/sources.list
124- # $SUDO apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EB9B1D8886F44E2A
125- # $SUDO apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA6932366A755776
124+ echo "sources.list:"
125+ cat /etc/apt/sources.list
126+ for f in /etc/apt/sources.list.d/*.list; do echo "$f:"; cat $f; done
126127 $SUDO apt-get update
127- $SUDO apt-get -y install gcc-multilib g++-multilib gfortran-multilib python3 python2.7 python3-minimal python2.7-minimal rpm libasound2-dev:$ARCH freeglut3-dev:$ARCH libfontconfig-dev:$ARCH libgtk2.0-dev:$ARCH libusb-dev:$ARCH libusb-1.0-0-dev:$ARCH libffi-dev:$ARCH libbz2-dev:$ARCH zlib1g-dev:$ARCH libxcb1-dev:$ARCH libpulse-dev:$ARCH
128- $SUDO apt-get -y install pkg-config ccache clang $TOOLCHAIN openjdk-8-jdk ant python2 python3-pip swig git file wget unzip tar bzip2 gzip patch autoconf-archive autogen automake cmake make libtool bison flex perl nasm ragel curl libcurl4-openssl-dev libssl-dev libffi-dev libbz2-dev zlib1g-dev rapidjson-dev libdrm-dev libva -dev
129-
128+ $SUDO apt-get -y install gcc-multilib g++-multilib gfortran-multilib python3 python2.7 python3-minimal python2.7-minimal rpm libasound2-dev:$ARCH freeglut3-dev:$ARCH libfontconfig-dev:$ARCH libgtk2.0-dev:$ARCH libusb-dev:$ARCH libusb-1.0-0-dev:$ARCH libffi-dev:$ARCH libbz2-dev:$ARCH zlib1g-dev:$ARCH libxcb1-dev:$ARCH libpulse-dev:$ARCH libdrm-dev:$ARCH libva-dev:$ARCH
129+ $SUDO apt-get -y install pkgconf ccache clang $TOOLCHAIN openjdk-8-jdk ant python2 python3-pip swig git file wget unzip tar bzip2 gzip patch autoconf-archive autogen automake cmake make libtool bison flex perl nasm ragel curl libcurl4-openssl-dev libssl-dev libffi-dev libbz2-dev zlib1g-dev rapidjson-dev
130+
130131 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
131132 echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
132133 ln -sf $JAVA_HOME /usr/lib/jvm/default-java
133134 find /usr/lib/jvm/default-java/
134- # curl -LO https://github.com/Kitware/CMake/releases/download/v3.24.2/cmake-3.24.2-linux-x86_64.tar.gz
135- curl -LO https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
136- curl -LO https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.18.3.tar.gz
137- curl -LO https://services.gradle.org/distributions/gradle-7.1.1-bin.zip
138- # $SUDO tar -xzf cmake-3.24.2-linux-x86_64.tar.gz -C /opt/
139- $SUDO tar -xzf apache-maven-3.6.3-bin.tar.gz -C /opt/
140- $SUDO tar -xzf git-2.18.3.tar.gz
141- $SUDO unzip gradle-7.1.1-bin.zip -d /opt/
142- # pushd git-2.18.3; make -j2 prefix=/usr/local/; $SUDO make -j2 prefix=/usr/local/ install; popd
143- # $SUDO ln -sf /opt/cmake-3.24.2-linux-x86_64/bin/* /usr/bin/
144- $SUDO ln -sf /opt/apache-maven-3.6.3/bin/mvn /usr/bin/mvn
145- $SUDO ln -sf /opt/gradle-7.1.1/bin/gradle /usr/bin/gradle
146-
147- $SUDO python3 -m pip install gdown || $SUDO python3 -m pip install gdown
148-
135+
149136 # install vulkan sdk
150137 echo Installing Vulkan-SDK
151138 if [[ "$CODENAME" == "jammy" ]]; then
152139 curl -s https://packages.lunarg.com/lunarg-signing-key-pub.asc | $SUDO tee /etc/apt/trusted.gpg.d/lunarg.asc >/dev/null
153140 $SUDO curl -s -o /etc/apt/sources.list.d/lunarg-vulkan-1.3.280-jammy.list https://packages.lunarg.com/vulkan/1.3.280/lunarg-vulkan-1.3.280-jammy.list
141+ $SUDO sed -i 's/deb http/deb [arch=amd64] http/g' /etc/apt/sources.list.d/lunarg-vulkan-1.3.280-jammy.list
142+ $SUDO sed -i 's/deb-src http/deb-src [arch=amd64] http/g' /etc/apt/sources.list.d/lunarg-vulkan-1.3.280-jammy.list
154143 else
155144 curl -s https://packages.lunarg.com/lunarg-signing-key-pub.asc | $SUDO apt-key add -
156145 $SUDO curl -s -o /etc/apt/sources.list.d/lunarg-vulkan-1.3.280-focal.list https://packages.lunarg.com/vulkan/1.3.280/lunarg-vulkan-1.3.280-focal.list
146+ $SUDO sed -i 's/deb http/deb [arch=amd64] http/g' /etc/apt/sources.list.d/lunarg-vulkan-1.3.280-focal.list
147+ $SUDO sed -i 's/deb-src http/deb-src [arch=amd64] http/g' /etc/apt/sources.list.d/lunarg-vulkan-1.3.280-focal.list
157148 fi
158149 $SUDO apt-get update && $SUDO apt-get install -y libvulkan1 libvulkan-dev vulkan-sdk
159-
150+
160151 if [[ -n ${USERLAND_BUILDME:-} ]]; then
161152 curl -LOJ https://github.com/raspberrypi/userland/archive/master.tar.gz
162153 tar -xzf userland-master.tar.gz
@@ -166,7 +157,7 @@ runs:
166157 export USERLAND_PATH=$(pwd)/userland-master/
167158 echo "USERLAND_PATH=$USERLAND_PATH" >> $GITHUB_ENV
168159 fi
169-
160+
170161 if [[ $CI_DEPLOY_PLATFORM == android-* ]]; then
171162 curl -LO https://dl.google.com/android/repository/android-ndk-r21e-linux-x86_64.zip
172163 unzip -qq android-ndk-r21e-linux-x86_64.zip
@@ -175,15 +166,15 @@ runs:
175166 else
176167 export MAVEN_OPTIONS="-Djavacpp.platform.compiler=$PREFIX-g++ -Djava.library.path=/usr/$PREFIX/lib/:/usr/lib/$PREFIX/:$USERLAND_PATH/build/lib/"
177168 fi
178-
169+
179170 if [[ -n ${ARCH_CUDA:-} ]] && [[ -n ${CI_DEPLOY_NEED_CUDA:-} ]]; then
180171 echo Installing CUDA, cuDNN, nvCOMP, etc
181172 curl -LO https://developer.download.nvidia.com/compute/cuda/12.3.2/local_installers/$CUDA
182173 curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel8/$ARCH_CUDA/libcudnn8-$CUDNN.rpm
183174 curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel8/$ARCH_CUDA/libcudnn8-devel-$CUDNN.rpm
184175 curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel8/$ARCH_CUDA/libnccl-$NCCL.rpm
185176 curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel8/$ARCH_CUDA/libnccl-devel-$NCCL.rpm
186-
177+
187178 $SUDO rpm -i --force --ignorearch --nodeps $CUDA libcudnn*.rpm libnccl*.rpm
188179 rm -f *.rpm *.tgz *.txz *.tar.*
189180 pushd /var/cuda-repo-rhel8-12-3-local/; $SUDO rpm -i --force --ignorearch --nodeps cuda*.rpm libc*.rpm libn*.rpm; $SUDO rm *.rpm; popd
@@ -192,15 +183,15 @@ runs:
192183 $SUDO ln -sf /usr/local/cuda/lib64/stubs/libnvidia-ml.so /usr/local/cuda/lib64/libnvidia-ml.so
193184 $SUDO mv /usr/include/cudnn* /usr/include/nccl* /usr/local/cuda/include/
194185 $SUDO mv /usr/lib64/libcudnn* /usr/lib64/libnccl* /usr/local/cuda/lib64/
195-
186+
196187 if [[ -n ${NVCOMP:-} ]]; then
197188 curl -LO https://developer.download.nvidia.com/compute/nvcomp/3.0.5/local_installers/$NVCOMP.tgz
198189 $SUDO tar -xvf $NVCOMP.tgz -C /usr/local/cuda/lib64/ --strip-components=1 lib/ || $SUDO tar -xvf $NVCOMP.tgz -C /usr/local/cuda/lib64/ --strip-components=2 nvcomp-3.0.5-ctk-12.2/lib/
199190 $SUDO tar -xvf $NVCOMP.tgz -C /usr/local/cuda/include/ --strip-components=1 include/ || $SUDO tar -xvf $NVCOMP.tgz -C /usr/local/cuda/include/ --strip-components=2 nvcomp-3.0.5-ctk-12.2/include/
200191 rm -f $NVCOMP.tgz
201192 fi
202-
203- # Work around issues with CUDA 10.2/11.x
193+
194+ # Work around issues with CUDA 10.2/11.x
204195 $SUDO mv /usr/include/cublas* /usr/include/nvblas* /usr/local/cuda/include/ || true
205196 $SUDO mv /usr/lib64/libcublas* /usr/lib64/libnvblas* /usr/local/cuda/lib64/ || true
206197 for f in /usr/local/cuda/include/*_v8.h; do $SUDO ln -sf $f ${f:0:${#f}-5}.h; done
@@ -224,7 +215,7 @@ runs:
224215 $SUDO sed -i /device_merge_sort.cuh/d /usr/local/cuda/include/cub/cub.cuh
225216 $SUDO sed -i /device_segmented_sort.cuh/d /usr/local/cuda/include/cub/cub.cuh
226217 $SUDO sed -i /warp_merge_sort.cuh/d /usr/local/cuda/include/cub/cub.cuh
227-
218+
228219 # Remove downloaded archives and unused libraries to avoid running out of disk space
229220 $SUDO rm -f $(find /usr/local/cuda/ -name '*.a' -and -not -name libcudart_static.a -and -not -name libcudadevrt.a -and -not -name libnvcomp_device.a)
230221 fi
@@ -242,9 +233,9 @@ runs:
242233 - name : Publish release
243234 shell : bash
244235 if : " github.event_name == 'release'"
245- run : ./gradlew build publish -Pdeploy.kotlin=false -Pdeploy.native=true -Pffmpeg.gpl=${{ matrix.gpl }} -Pdeploy.version=${{ github.event.release.tag_name }} --console=plain --info --configure-on-demand --parallel --build-cache
236+ run : ./gradlew build publish -Pdeploy.kotlin=false -Pdeploy.native=true -Pffmpeg.platform=${{ github.job }} -Pffmpeg. gpl=${{ matrix.gpl }} -Pdeploy.version=${{ github.event.release.tag_name }} --console=plain --info --configure-on-demand --parallel --build-cache
246237
247238 - name : Publish snapshot
248239 shell : bash
249240 if : " github.event_name != 'release'"
250- run : ./gradlew build publish -Pdeploy.kotlin=false -Pdeploy.native=true -Pffmpeg.gpl=${{ matrix.gpl }} -Pdeploy.version=${{ steps.vars.outputs.sha_short }}-dev --console=plain --info --configure-on-demand --parallel --build-cache
241+ run : ./gradlew build publish -Pdeploy.kotlin=false -Pdeploy.native=true -Pffmpeg.platform=${{ github.job }} -Pffmpeg. gpl=${{ matrix.gpl }} -Pdeploy.version=${{ steps.vars.outputs.sha_short }}-dev --console=plain --info --configure-on-demand --parallel --build-cache
0 commit comments