diff --git a/Dockerfile b/Dockerfile index ff585f33..cb79b98f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -77,6 +77,20 @@ RUN if [ "$TARGETARCH" = "arm64" ]; then \ git clean -d -x -f; \ fi +RUN if [ "$TARGETARCH" = "arm64" ]; then \ + # build solc-v0.6.12 + git checkout v0.6.12; \ + grep -rl '\-Werror' ./cmake/EthCompilerSettings.cmake | xargs sed -i 's/\-Werror/\-Wno\-error/g'; \ + grep -rl 'make -j2' ./scripts/build.sh | xargs sed -i 's/make -j2/make -j4/g'; \ + grep -rl 'sudo make install' ./scripts/build.sh | xargs sed -i 's/sudo make install/make install/g'; \ + grep -rl '#include ' ./liblangutil/SourceLocation.h | xargs sed -i 's/#include /#include \n#include /g'; \ + ./scripts/build.sh; \ + mv /usr/local/bin/solc /root/.solcx/solc-v0.6.12; \ + /root/.solcx/solc-v0.6.12 --version | grep 'Version: 0.6.12+commit.27d51765' || (echo "Incorrect solc-v0.6.12 version" && exit 1); \ + git checkout .; \ + git checkout develop; \ + git clean -d -x -f; \ + fi RUN if [ "$TARGETARCH" = "arm64" ]; then \ # build solc-v0.8.28