-
-
Notifications
You must be signed in to change notification settings - Fork 6.4k
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
build: generate buildinfo.txt
for test logs
#14802
Conversation
Also read this from runtests.pl and dump it to the log.
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.
👍
BTW, a more traditional way to generate this file would be to have a |
Yes, considered it. Upside is that the fields would be guaranteed to match between cmake and autotools, but they also use a slightly different set now, so I went for the simpler, looser approach. (Converting |
There is plenty of tweaking opportunity here:
I'd say it's largely good as it is for a start and we can tweak it as we go. |
I've modified Test Clutch to use these new fields; you should start seeing them tomorrow. I found a couple of inconsistencies I'd love to see addressed, though:
Some fields are duplicates:
|
@dfandrich: Thanks for the testclutch update and your feedback! I'll see how to include the raw compiler version from autotools.
The rest is mostly caused by the different worldviews of the tools. With autotools host/target is always the same as cpu-vendor-os. With CMake, it's a bit all over the place. |
- cmake: drop `configure.os`. This also includes OS version, but thus far it's not important enough to include it. - autotools: drop redundant, autotools-only `{target|host}.vendor`. (it's part of the triplet in `{target|host}`.) - swap order to `*.cpu` -> `*.os` to match triplet-order. - cmake: drop redundant `target`. It's manually filled and only in a (so far) few CI jobs. Let's revisit when this becomes useful. - move `buildinfo.txt` to build root. - dist: add `buildinfo.txt` to `DISTCLEANFILES`. - autotools: detect human readable compiler version. - autotools: replace `XXYY` `compiler.version` with "X.Y"-style. (also to match cmake.) - autotools: use distinct `compiler_id` for Apple clang: `APPLECLANG`. To match cmake and also because the the "X.Y"-style version number is the Apple version, while `XXYY` was a value roughly translated to mainline llvm/clang version. - show buildinfo at the end of the configure stage, when run in CI, or when `CURL_BUILDINFO` or `CURL_CI` env is set. Follow-up to 1fdea16 #14802 Assisted-by: Dan Fandrich Ref: #14802 (comment) Closes #14822
- cmake: drop `configure.os`. This also includes OS version, but thus far it's not important enough to include it. - autotools: drop redundant, autotools-only `{target|host}.vendor`. (it's part of the triplet in `{target|host}`.) - swap order to `*.cpu` -> `*.os` to match triplet-order. - cmake: drop redundant `target`. It's manually filled and only in a (so far) few CI jobs. Let's revisit when this becomes useful. - move `buildinfo.txt` to build root. - dist: add `buildinfo.txt` to `DISTCLEANFILES`. - autotools: detect human readable compiler version. - autotools: replace `XXYY` `compiler.version` with "X.Y"-style. (also to match cmake.) - autotools: use distinct `compiler_id` for Apple clang: `APPLECLANG`. To match cmake and also because the the "X.Y"-style version number is the Apple version, while `XXYY` was a value roughly translated to mainline llvm/clang version. - show buildinfo at the end of the configure stage, when run in CI, or when `CURL_BUILDINFO` or `CURL_CI` env is set. Follow-up to 1fdea16 curl#14802 Assisted-by: Dan Fandrich Ref: curl#14802 (comment) Closes curl#14822
Before this patch, each build tool generated `tests/configurehelp.pm` manually. Ref: #14802 (comment) Closes #14819
If it exists. Follow-up to 1fdea16 curl#14802
If present. It aims to provide TextClutch the same build information that `runtests.pl` already is providing. Ref: https://testclutch.curl.se/static/reports/feature-matrix.html Ref: #15256 Follow-up to 1fdea16 #14802 Closes #15279
It has the side-effect of silencing CMake warnings about unused variables passed via the command-line. Drop it till a better method is found to retrieve this. Reported-by: Kai Pastor Ref: curl#14936 (comment) Follow-up to 1fdea16 curl#14802
Collecting the args list has the undesired side-effect of silencing CMake warnings about unused variables passed via the command-line. Drop it till a better method is found to retrieve them. Reported-by: Kai Pastor Ref: #14936 (comment) Follow-up to 1fdea16 #14802 Closes #15501
Also:
buildinfo.txt
fromruntests.pl
and dump it to the log.CROSS
target flag for cross-builds.It is meant to help filling out missing datapoints in the testclutch
matrix.