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

create SIRF_DISABLE_Gadgetron etc #750

Open
KrisThielemans opened this issue Aug 1, 2022 · 0 comments
Open

create SIRF_DISABLE_Gadgetron etc #750

KrisThielemans opened this issue Aug 1, 2022 · 0 comments

Comments

@KrisThielemans
Copy link
Member

SIRF has CMake variables DISABLE_Gadgetron etc. Currently these are not exposed in External_SIRF.cmake. That means that they can only be set via SIRF_EXTRA_CMAKE_ARGS="-DDISABLE_Gadgetron:BOOL=OFF". (Similar variables are exposed in External_STIR.cmake).

To make matters confusing, there are BUILD_* variables in the Superbuild. There is some logic related to the BUILD_Gadgetron etc variables

if (${BUILD_Gadgetron})
set(${proj}_DEPENDENCIES "${${proj}_DEPENDENCIES};Gadgetron")
endif()
if (${BUILD_NIFTYREG})
set(${proj}_DEPENDENCIES "${${proj}_DEPENDENCIES};NIFTYREG")
endif()
if (${BUILD_STIR})
set(${proj}_DEPENDENCIES "${${proj}_DEPENDENCIES};STIR")
endif()
if (${BUILD_SPM})
set(${proj}_DEPENDENCIES "${${proj}_DEPENDENCIES};SPM")
endif()

This says that if you set BUILD_Gadgetron=OFF, Gadgetron is not added as a dependency to the SIRF project (the ExternalProject dependencies ensure build order). That is fine in itself, but it does NOT mean that the SIRF build will not look for ISMRMRD (and optionally Gadgetron toolboxes).

Note that on Windows, we set BUILD_Gadgetron=OFF such that we don't attempt to build Gadgetron, but Gadgetron support in SIRF is still enabled (by intention).

Conclusion

if you don't need MR support in SIRF, at present you need to

cmake -DBUILD_Gadgetron:BOOL=OFF -DSIRF_EXTRA_CMAKE_ARGS="-DDISABLE_Gadgetron:BOOL=OFF" ....

Not great...

More on naming

In addition, there are the USE_SYSTEM_* variables. You can set BUILD_Gadgetron=ON but USE_SYSTEM_Gadgetron=ON. which means that Gadgetron wll not be built. Confusing...

See some more discussion on naming in #511.

paskino added a commit to paskino/SIRF-SuperBuild that referenced this issue Aug 2, 2022
addresses create SIRF_DISABLE_Gadgetron etc SyneRBI#750
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

1 participant