Skip to content
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 fail from 0.0.5 to 0.0.6 #14

Open
YoungJin-gurum opened this issue May 7, 2021 · 3 comments
Open

Build fail from 0.0.5 to 0.0.6 #14

YoungJin-gurum opened this issue May 7, 2021 · 3 comments
Labels
help wanted Extra attention is needed

Comments

@YoungJin-gurum
Copy link

YoungJin-gurum commented May 7, 2021

To keep source checkout up to date, I download the latest sources, and rebuild workspace.
Version 0.0.5 has been built, the following error occurs when trying to build the newly received 0.0.6 version source.

--- stderr: google_benchmark_vendor
error: patch failed: cmake/thread_safety_attributes.cpp:1
error: cmake/thread_safety_attributes.cpp: patch does not apply
make[2]: *** [CMakeFiles/benchmark-1.5.2.dir/build.make:101: benchmark-1.5.2-prefix/src/benchmark-1.5.2-stamp/benchmark-1.5.2-patch] Error 1
make[1]: *** [CMakeFiles/Makefile2:76: CMakeFiles/benchmark-1.5.2.dir/all] Error 2
make: *** [Makefile:130: all] Error 2

Failed <<< google_benchmark_vendor [0.29s, exited with code 2]

As I guess, ver 0.0.5 and 0.0.6 use same version of benchmark 1.5.2 makes this error.
Is there a solution other than deleting and rebuilding the build?

@nuclearsandwich
Copy link
Contributor

@clalancette FYI

@clalancette
Copy link
Contributor

Is there a solution other than deleting and rebuilding the build?

Not right now, as far as I know.

The whole "cmake externalproject + patches" thing that we use is, frankly, pretty brittle. It's been hard to make it work on Windows without administrator, it's been hard to make the patches compatible across all platforms, and you have to add magic CMake incantations to make it work at all. Even though we've made it work, we still have problems:

  • If you use git to check things out (which you often do because of using git apply for patches), it always prints a message out to stderr, and there is no way to disable it
  • You can't rebuild when upgrading, because then the patches don't apply

I think we may want to reconsider how we are doing vendoring for H-Turtle.

All of that said, if you figure out a way to make it work with the current system, I'd be happy to review a patch.

@hidmic hidmic added the help wanted Extra attention is needed label Sep 10, 2021
@asherikov
Copy link

What about embedding the project sources with git read-tree and patching in place?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

5 participants