Replace existing GNU Makefile infrastructure with CMake
This will not affect functionality of any of the applications. This primarily affects developer workflow and distribution. Installation instructions will be updated to reflect infrastructure changes regarding the new tools.
A current effort is underway to replace the ISIS3 GNU Makefile infrastructure with CMake. This ticket is for merging in these changes into the development branch of isis3.
The responsibilities that will be maintained as part of this transition are: resolving dependencies for supported operating systems, compiling isis3 objects and executables, installing the isis3 libraries and executables, running test suites, allowing the developer to maintain and modify test suites.
This will not change any functionality in the isis3 application suite.
This will primarily affect how developers work with isis3 source code, how they build and test it, and how they distribute it.
CMake is also gathering dependencies using anaconda as a package manager. Instead of internally building our dependencies from scratch, we are using primarily the conda-forge (https://anaconda.org/conda-forge) distributions of libraries that we need, and supplementing our own distributions as required. See https://anaconda.org/usgs-astrogeology if you would like to see which packages we are hosting ourselves.
Part of this effort will include updated installation instructions using a conda tool (anaconda, miniconda, ...) to install isis3 and its dependencies. The rsync server will still be used for distributing our data and test data, but not isis3 binaries.
This targets a stable isis3.6.0 release version.
#1 Updated by Ian Humphrey about 2 months ago
- Description updated (diff)
- Status changed from New to In Progress
- Assignee set to Ian Humphrey
Current status of CMake team effort:
Linux development systems Ubuntu18.04 and Fedora28 are building and testing successfully.
macOS development system macOS10.13 building and testing successfully.
Working on alpha deployment of isis3.6.0 (in-house testing).
#2 Updated by Ian Humphrey about 1 month ago
The isis3 cmake branch is going to be the test-bed and integration branch for the next isis3 release, isis3.6.0.
This means that the planned features for isis3.6.0 will be added to the cmake branch, so I will update this ticket as features are integrated.