Great stuff.  Thanks to both.
M


On 25 Sep 2012, at 13:11, Sascha Zelzer wrote:

Hi,

Caspar answered some of the questions already. I will add some more comments.

On 09/24/2012 09:13 PM, Clarkson, Matt wrote:
Hi there,

I hope I haven't asked this before ... :-)

Our project structure closely resembles the MITK-Project Template
https://github.com/MITK/MITK-ProjectTemplate

If I wanted to have several apps, where each app has a different selection of 
plugins ... is this possible?
Yes, this is officially supported and is supposed to "just" work if you are 
relying on the MITK CMake macros.

I guess it basically means that I need to generate a .provisioning file for 
each app, with a different load of plugins in each file.
Yes, but you actually rarely need to create a .provisioning file yourself. The 
CMake function

FunctionCreateBlueBerryApplication 
http://docs.mitk.org/nightly-qt4/BlueBerry/reference/api/html/namespaceCMake.html#a9f16f167e718f5d68edf4c12f6ed320c

or specifically

FunctionCreateProvisioningFile (normally called from 
FunctionCreateBlueBerryApplication) 
http://docs.mitk.org/nightly-qt4/BlueBerry/reference/api/html/namespaceCMake.html#a9f16f167e718f5d68edf4c12f6ed320c

does that for you. If you explicitly define a set of plugins to be included, 
you only need to list plugins which are not required by other plug-ins already 
listed. Plugin dependencies will be automatically enable in the build system 
and added to the provisioning file.

The reason I ask, is that it might be a bit fiddly with things like Mac 
application structure???
Yes, but we invested quite some time to hide that fact from the users of our 
CMake install macros.

If a plug-in is used by two or more applications, it is shared between them on 
Linux and Windows but gets duplicated during the install process on a Mac.

In MITK, we currently have three applications: CoreApp, mitkDiffusion and 
mitkWorkbench

https://github.com/MITK/MITK/tree/master/Applications

See also

https://github.com/MITK/MITK/blob/master/Applications/AppList.cmake

and especially the CMake code starting here

https://github.com/MITK/MITK/blob/master/CMakeLists.txt#L369

the variable MACOSX_BUNDLE_NAMES is important because its contents is read in by

https://github.com/MITK/MITK/blob/master/CMake/mitkInstallRules.cmake

which is meant to be included by external projects to get the install stuff 
right. MITK includes that file itself here:

https://github.com/MITK/MITK/blob/master/CMakeLists.txt#L833

- Sascha


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users

Reply via email to