Divided all packages into core and modules package.
Updated everything in core to C++17 and CGAL 5.0.3 and verified their build
Core packages should have as little as possible external dependencies
Module packages are structured according to their usage (can be changed later too) and may have arbitrary many dependencies. But their build is disabled by default.
Things that are done rather radical and without taking much:
Kicked out everything that drags "unusual" dependencies into the core libraries
This especially affects cpt_utils, which we should refactor/break apart anyway. I kicked out everything that is connected to a dependency that needs to be installed manually (libpointmatcher e.g.)
Removed typdefs in cgal_definitions that are only used in one specific modules
Reasoning:
As we all use the library a bit differently, I thought it is important to have a solid, minimal base. Thus, the core libraries.
Rather radical refactoring, as I did not wanted to sink time into making everything neat that might not even be used again in the future.
Instead of removing stuff, I un-commented it for now. I am usually against this, but here I think it saves the person that looks for some specific function that disappeared a lot of time, because they immediately see why and where it was kicked out. This can be cleaned-up at a later stage.
To do:
I did not test/try to build any code inside the modules. This needs to be done by each of us individually for their module. Also feel free to deprecated things if you don't need something anymore and don't feel like updating it.
Addresses some of the issues raised in #80
This PR changes the following:
Things that are done rather radical and without taking much:
Reasoning:
To do: I did not test/try to build any code inside the modules. This needs to be done by each of us individually for their module. Also feel free to deprecated things if you don't need something anymore and don't feel like updating it.