Skip to content

Bump evmone to 0.13.0 #15825

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Feb 6, 2025
Merged

Bump evmone to 0.13.0 #15825

merged 4 commits into from
Feb 6, 2025

Conversation

r0qs
Copy link
Member

@r0qs r0qs commented Feb 4, 2025

This PR bumps evmone to 0.13.0 and fixes a build issue with Boost and Clang 18 in our ossfuzz docker image. It adds the -nostdinc++ compiler flag when building Boost to disable searching for headers in the default C++ standard directories, ensuring Clang explicitly looks for the libc++ headers in the correct location.

Additionally, it includes a workaround for libprotobuf-mutator. Unfortunately, I couldn’t get it to work with libprotobuf-mutator v1.3.

@@ -1 +0,0 @@
./build.sh
Copy link
Member Author

@r0qs r0qs Feb 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was removed because we dropped Ubuntu 20.04 from our buildpack-deps but forgot to delete the symlink.

For reference, these buildpack-deps_test* scripts are used here:

bash -c "/project/scripts/ci/${IMAGE_NAME}_test_${IMAGE_VARIANT}.sh"
and are called by our CI in this workflow:
scripts/ci/docker_upgrade.sh ${{ env.IMAGE_NAME }} ${{ matrix.image_variant }} ${{ env.DOCKER_REPOSITORY }}
for all available images, which no longer include Ubuntu 20.04.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

By the way - why didn't you remove ubuntu2004 from GH workflows?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

By the way - why didn't you remove ubuntu2004 from GH workflows?

Oh, forgot about it, but it should be removed indeed.

Copy link

github-actions bot commented Feb 4, 2025

solbuildpackpusher/solidity-buildpack-deps:ubuntu.clang.ossfuzz-10 [solbuildpackpusher/solidity-buildpack-deps@sha256:bd55d9a3b13c88608709ec442188c414d30f4c49f23dc2ce8b76bf8c90603fc7].

Copy link

github-actions bot commented Feb 4, 2025

solbuildpackpusher/solidity-buildpack-deps:ubuntu2204-2 [solbuildpackpusher/solidity-buildpack-deps@sha256:877fcc2589779f8245770711d10db92eda97d338dae76b6a9f27dde1a41b3aa0].

Copy link

github-actions bot commented Feb 4, 2025

solbuildpackpusher/solidity-buildpack-deps:ubuntu2404.clang-4 [solbuildpackpusher/solidity-buildpack-deps@sha256:97fb2d1bc002b3624161f539a1d29543c0e6c6f4d9a61f611b9b60e99e18f377].

Copy link

github-actions bot commented Feb 4, 2025

solbuildpackpusher/solidity-buildpack-deps:ubuntu2404-3 [solbuildpackpusher/solidity-buildpack-deps@sha256:ef6a91d7f1434c67fb9e05c6136d80f71c0ad9198479e1a88e3437680993cda4].

@r0qs
Copy link
Member Author

r0qs commented Feb 4, 2025

I canceled the rebuild of the images after rebasing the branch, but the successful build of the images can be seen here: https://github.com/ethereum/solidity/actions/runs/13135391295

@r0qs r0qs marked this pull request as ready for review February 4, 2025 13:42
@r0qs r0qs requested review from cameel and clonker February 4, 2025 13:42
cd evmone; \
mkdir build; \
cd build; \
CXX=clang++ cmake -G Ninja -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX="/usr" ..; \
CXX=clang++ cmake .. -G Ninja \
-DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_FLAGS="-stdlib=libc++" \
Copy link
Member

@clonker clonker Feb 5, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
-DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_FLAGS="-stdlib=libc++" \
-DCMAKE_CXX_FLAGS="-stdlib=libc++" \

this is set from within cmake

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that this is not compiling solidity but evmone, but they indeed already set it in the cmake: https://github.com/ethereum/evmone/blob/dd38ff4fdea410908f397a5c7115c2877e064c05/lib/evmone/CMakeLists.txt#L33

clonker
clonker previously approved these changes Feb 5, 2025
Copy link
Member

@clonker clonker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Setting the standard from outside is non-critical, it's just something that has to be adapted once we update to, e.g., c++23

This comment was marked as outdated.

This comment was marked as outdated.

This comment was marked as outdated.

This comment was marked as outdated.

@nikola-matic nikola-matic merged commit 718b8a4 into develop Feb 6, 2025
75 of 79 checks passed
@nikola-matic nikola-matic deleted the bump-evmone-13 branch February 6, 2025 08:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants