Page MenuHomePhabricator

Rewrite packaging of MITK
Open, NormalPublic

Description

Over the years packaging of MITK evolved into a completely chaotic spaghetti code that noone is able to really understand anymore. Packaging can take ages and it appears that many things are done multiple times. There also seems to be fundamental issues in understanding the packaging process. Packaging was only patched before releases to get it somehow working but never adapted to newer CMake versions. We also have custom CMake BundleUtilities from Daniel Maleike to speed up packaging but we drift away from the official CMake version of BundleUtilities over time. Over the past years we spend many weeks in trying to understand and fixing our installers. This has to stop and therefore I plan to do a complete rewrite of the packaging after gathering some insights in dummy CMake projects on Windows, Linux, and macOS.

Event Timeline

kislinsk created this task.
kislinsk updated the task description. (Show Details)
NOTE: GetPrerequisites is deprecated since CMake 3.16 and was superseded by file(GET_RUNTIME_DEPENDENCIES).
NOTE: CPack NSIS Generator requires NSIS 3.0 since CMake 3.17.
gaoh closed subtask Restricted Maniphest Task as Invalid.Nov 25 2020, 10:57 AM

Currently not actively working on this. Packaging seems to work for the moment except for Python (never did). I think this task will soon be revived with the work on Python in MITK by Kim-Celine and Ashis.