MRtrix3 / mrtrix3

MRtrix3 provides a set of tools to perform various advanced diffusion MRI analyses, including constrained spherical deconvolution (CSD), probabilistic tractography, track-density imaging, and apparent fibre density
http://www.mrtrix.org
Mozilla Public License 2.0
294 stars 181 forks source link

cmake: Target individual Python commands #2999

Open Lestropie opened 2 months ago

Lestropie commented 2 months ago

Currently, there is a single cmake job that populates build/bin/ with the executables for all Python commands present in the code base. However in a current context I want the ability to nominate only a subset of commands (some C++, some Python), and it would be preferable for the build/bin/ directory to be populated exclusively with only the set of commands I nominate. This would require construction of an individual target per Python command. Each of those targets should then depend on the API target, so that the API is created in the build directory only if at least one Python command is built.

Lestropie commented 2 months ago

Extending this, for each command represented as a target, there are two separate underlying jobs: creation of the executable, and copying / softlinking of the source code. Those should ideally be represented as two independent tasks to be performed per command target.