sciapp / gr

GR framework: a graphics library for visualisation applications
Other
327 stars 54 forks source link

Makefile/build process #33

Open daurnimator opened 7 years ago

daurnimator commented 7 years ago

The build process is full of odd practices

danielkaiser commented 5 years ago

We are closing this issue due to inactivity. Please reopen the issue and let us know if its cause still persists with the current version of GR.

daurnimator commented 5 years ago

I don't think any of the issues I mentioned here have been fixed.

FlorianRhiem commented 5 years ago

Hey, the build system is something we've been working on over time, though the progress has been rather slow as the build system usually worked well enough and other bugs or features were more pressing or useful. I recently refactored our thirdparty builds for the self-contained build style, unifying build systems there and moving to PREFIX. Something similar still needs to be done for the main Makefiles (and their MinGW counterparts) and things like $(MAKE) are part of that, as well as proper dependency target handling and configuration. Someone else is also working on a CMake based build as an alternative to the current Makefiles for gr, gks, gr3 and the plugins, and I expect that to be ready soon, with less "historically grown" qualities to it. :)

We've also split up the Julia and Python wrappers into seperate repositories. The wrappers will only install the GR runtime if no pre-existing runtime (with the required minimum version) is found locally.

The way we deal with thirdparty dependencies, offering bundled versions and using static libraries for those, comes down to design choices though: