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

changing version_config.cmake doesn't change git tags once already compiled #51

Closed
KrisThielemans opened this issue Oct 11, 2017 · 10 comments
Milestone

Comments

@KrisThielemans
Copy link
Member

version_config.cmake sets SIRF_TAG as cached variables. However, this means that once you build, they never get changed (unless you force it). In particular, doing a git pull might change version_config.cmake but that still won't change the cahced variables, so you'll be building the same version.

The only way around it is to run cmake again, e.g.

cmake -DGadgetron_TAG=00b96376568278a595e78879026bb3b0d5fbb98d  -DGadgetron_URL=https://github.com/gadgetron/gadgetron .

This is in particular a problem for the VM, as updating the VM now no longer works as expected.

@casperdcl, any ideas?

@KrisThielemans KrisThielemans added this to the v1.0.0 milestone Oct 11, 2017
@casperdcl
Copy link
Member

I thought the VM would always have ..._TAG=master and if people manually change that then it's reasonable to expect them to manually upgrade.

@KrisThielemans
Copy link
Member Author

at present, we set it to a specific tag for SIRF. We could use master probably (people might expect that update_VM.sh just gets them the most recent development version) but then the same problem still holds for Gadgetron_TAG etc. I don't think we can run the risk of picking up the most recent Gadgetron or STIR, but on the other hand, SIRF-master might need a newer version of Gadgeton/STIR. Our plan is to encode this in the SuperBuild version-config.cmake but this doesn't seem to be enough.

For the VM, I have a separate SyneRBI/SyneRBI_VM#31 with a suggested solution. Let's continue the VM discussion there.

For the SuperBuild itself, I think it's a surprising side-effect of our set-up, but I don't see an easy solution.

@casperdcl
Copy link
Member

related to #4

@casperdcl
Copy link
Member

well we could include re-running cmake as part of the update script

@KrisThielemans
Copy link
Member Author

no, I don't think this is related to #4 after all. I've checked the dependencies generated by CMake and version-config.cmake et al are listed.
Indeed, running cmake itself doesn't change anything to the checked-out clones, unless you change cached variables of course.

@paskino
Copy link
Contributor

paskino commented Nov 17, 2017

We could we use the rebuild_cache target

rebuild_cache – This target runs cmake on the source tree and picks up additional cache entries if they exist.

@KrisThielemans
Copy link
Member Author

@paskino can you document the solution we use on the VM, I guess in https://github.com/CCPPETMR/SIRF/wiki/Rebuilding-after-upgrades

@KrisThielemans
Copy link
Member Author

@paskino, please add instructions on how to update. (i.e. do what you do on the VM)

@KrisThielemans
Copy link
Member Author

documented on the wiki. Try to resolve this later.

@KrisThielemans KrisThielemans modified the milestones: v1.0.0, v1.1 Jan 19, 2018
@KrisThielemans KrisThielemans modified the milestones: v2.0, v2.1 Feb 15, 2019
@KrisThielemans KrisThielemans modified the milestones: v2.1, v2.2 Oct 6, 2019
@KrisThielemans
Copy link
Member Author

There isn't much we can do about this, and we have some doc already on updating, so closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants