Page MenuHomePhabricator

Cannot build MITK core using super build without BlueBerry
Closed, ResolvedPublic

Description

While caring for my dartclient (just core and a handful modules, no BlueBerry, no ExtApp/CoreApp), I found that the current master does not configure anymore when you try to run super-build with options like

MITK_USE_SUPERBUILD:BOOL=ON
MITK_USE_VTK_5_8_IN_SUPERBUILD:BOOL=ON
MITK_USE_QT:BOOL=ON
MITK_USE_GDCMIO:BOOL=ON
MITK_USE_DCMTK:BOOL=ON
DCMTK_DICOM_ROOT_ID:STRING=1.2.3.4
MITK_USE_BLUEBERRY:BOOL=OFF
MITK_BUILD_TUTORIAL:BOOL=OFF
MITK_BUILD_ALL_APPS:BOOL=OFF
MITK_BUILD_APP_CoreApp:BOOL=OFF
MITK_BUILD_APP_ExtApp:BOOL=OFF
MITK_MODULES_TO_BUILD:INTERNAL=Mitk;Qmitk;PlanarFigure;ImageExtraction;ImageStatistics;SceneSerializationBase;Overlays

CMake exists with

CMake Error at Applications/ExtApp/CMakeLists.txt:28 (FunctionCreateBlueBerryApplication):

Unknown CMake command "FunctionCreateBlueBerryApplication".

The reason is that CMake variable MITK_BUILD_APP_ExtApp is defined at super-build level, but not reached through to MITK-Configure.

This would be easy to fix by adding the variable name to list mitk_cmake_boolean_args in SuperBuild.cmake. However, I am not sure if this is the best way, because there are a couple of other applications, which just by chance have the default to NOT build.

Marco, Sascha, what is your opinion on this one? Should all variables be definable from superbuild level? A second option would be to check MITK_USE_BLUEBERRY in the CMakeLists.txt of each app.

Event Timeline

maleike added a subscriber: maleike.

To make this more reproducable: the dartclient script that I use..

I think this is related to Caspars recent changes, so assigning bug to him :-)

If this is caused by my changes it could be solved by checking for MITK_USE_BLUEBERRY before doing the installation related configurations.

Is there a reasonable scenerario, where one might wish to build an installer, while not using blueberry?

Ahm, sorry. I just had a look at Caspars changes and they could not possibly have caused this. I thought the problem just appeared, but it must be there for quite some time now.

I don't think we should pass any more build options from the superbuild to MITK. I will just add a if(MITK_USE_BLUEBERRY) at the relevant place.

(In reply to comment #4)

I don't think we should pass any more build options from the superbuild to
MITK. I will just add a if(MITK_USE_BLUEBERRY) at the relevant place.

Ok, thanks, this would also be my preferred solution.