-
Notifications
You must be signed in to change notification settings - Fork 47
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
dependency_support: boost: bump boost to v1.82 #164
Conversation
/gcbrun |
Looks like there's something off with the Boost rules
This might be a bazel version issue. |
Oh yes, that is indeed bazel version issue. It looks like the rules for building bazel starting from nelhage/rules_boost@5729d34#diff-fa9d836e1eb513176a2b1b9e121bcde61bfed880a680a8690ef84fc65b92f0bdR13 will work only with bazel releases >= v5.1.0 after bazelbuild/starlark#185 was solved.
This error does not occur on bazel v5.1.0. bazel_rules_hdl/cloudbuild.yaml Line 36 in af96df4
gcr.io/bazel-public/bazel:latest (or better, to pin the version to v5.1.0 or newer)?
|
/gcbrun |
I think we would also need to document the new required version here: https://github.com/hdl/bazel_rules_hdl/blob/main/README.md?plain=1#L4 |
5b8330c
to
8b0feb5
Compare
/gcbrun |
different failure here:
|
cloudbuild.yaml
Outdated
@@ -42,12 +42,6 @@ steps: | |||
apt-get update | |||
apt-get install apt-transport-https ca-certificates -y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we can remove those as well, as we're not fetching bazel anymore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure if we can do that but I'll try that out. Those lines were added on OpenROAD bump 2 years ago: #56
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ah interesting I though they were added because of the wget
, I think we should be able to assume that the official bazel image has everything needed to resolve http_archive
from the WORKSPACE
.
I don't have the access to build logs from Google Cloud Build but it looks like it fails on early stage of the build. It might be caused by changing the container image. I will look into this. |
/gcbrun |
Now the job fails with:
|
cloudbuild.yaml
Outdated
wget https://github.com/bazelbuild/bazel/releases/download/4.2.1/bazel_nojdk-4.2.1-linux-x86_64 | ||
chmod +x bazel_nojdk-4.2.1-linux-x86_64 | ||
mv bazel_nojdk-4.2.1-linux-x86_64 /usr/local/lib/bazel/bin/bazel | ||
# End Bazel upgrade hack. | ||
python3 tools/generate_uuid.py > build_invocation_id.txt |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks like this should be written to $TMPDIR
or /workspace
, i.e we shouldn't assume that the current directory is writable on this image.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
actually since it is only used in variable substitution below, it's probably safe to just story to a local env var.
/gcbrun |
I messed up with those env vars:
|
/gcbrun |
cloudbuild.yaml
Outdated
python3 tools/generate_uuid.py > build_invocation_id.txt | ||
python3 tools/generate_uuid.py > test_invocation_id.txt | ||
export BUILD_INVOCATION_ID=$(python3 tools/generate_uuid.py) | ||
export TEST_INVOCATION_ID=$(python3 tools/generate_uuid.py) | ||
echo STATUS: Reporting logs with invocation id $(cat invocation_id.txt) to GitHub. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
invocation_id.txt
probably does not exist. Not sure why it isn't failing on that
/gcbrun |
still:
|
yes, I will just go with writing files to |
No need to use |
It probably still throws:
|
Yes:
|
|
/gcbrun |
The issue is that currently used docker image (
I managed to find another repository with bazel docker images: https://console.cloud.google.com/artifacts/docker/cloud-builders/us/gcr.io/bazel which is based on https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/bazel. |
|
Ok, thank you @proppy. It looks like For the time being I will set the docker image to the latest one from https://console.cloud.google.com/artifacts/docker/cloud-builders/us/gcr.io/bazel and I will work on solving issues during the actual bazel_rules_hdl test. |
/gcbrun |
@lpawelcz did you also take a look at |
alternative there is also https://edu.chainguard.dev/chainguard/chainguard-images/reference/bazel/overview/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should we also document the other changes in the PR description (spdlog and libbacktrace deps)?
@QuantamHD can you also review (I don't have merging right in this project) |
Docker images from
And I will post those shortly |
I have updated the description. @proppy, @QuantamHD please take a look at this PR and also at #167 where I've changed the docker image in order to run CI with bazel v5.4.0 |
This is a temporary change to test the XLS workspace before PRs in bazel_rules_hdl are merged: * hdl/bazel_rules_hdl#167 * hdl/bazel_rules_hdl#164 * hdl/bazel_rules_hdl#165 Signed-off-by: Pawel Czarnecki <[email protected]>
LGTM, but @QuantamHD needs to hit the merge button :) |
Thanks for the contribution! Looks like there are merge conflicts to resolve |
Bump build rules for boost effectively bumping boost dependency to v1.82. Due to rename (BUILD.boost -> boost.BUILD) and small changes in the renamed file also the patches had to be updated. boost_library defined for python in add_python.patch needs to exclude file 'fabscript' from the build because it is added by boost_library() definition by default and that causes build errors. Signed-off-by: Pawel Czarnecki <[email protected]>
This fixes build errors caused by changes in MINSIGSTKSZ definition. related issues: * gabime/spdlog#1923 * gabime/spdlog#2058 Signed-off-by: Pawel Czarnecki <[email protected]>
This PR is the second one in the PR chain that consists of:
Each of the following PRs depend on previous ones which means that the correct merging order is:
#167 -> #164 -> #165
I will rebase the PRs one at the time as they are merged in order to avoid conflicts.
This PR bumps the build rules for boost effectively bumping boost dependency to v1.82.
Due to rename (BUILD.boost -> boost.BUILD) and small changes in the renamed file also the patches had to be updated.
Additionally,
boost_library
forboost/python
adds tocc_library
sources all files underlibs/python/src
which includesfabscript
which is not a C++ source and that is causing build failures. I had to further modifyadd_python.patch
to explicitly remove this file from the build configuration.Bumping boost was required to make
openroad
target working as I kept getting build errors:Another required change was bumping
spdlog
. After bumping boost I encountered spdlog build errors in my local test setup that were caused byMINSIGSTKSZ
no longer being a constant (as described in catchorg/Catch2#2421 and gabime/spdlog#2058)