FLAMEGPU2 icon indicating copy to clipboard operation
FLAMEGPU2 copied to clipboard

CMake install project

Open ptheywood opened this issue 4 years ago • 2 comments

Now with extra environment variables, and rtc/swig/python implementation having an install step makes sense.

This would need to set environment variables, copy files to appropriate locations etc.

Care must be taken:

  • Needs to be usable on HPC systems where users are not root (i.e. configurable)
  • Need to support continued development of the library - so local non-installed builds have priority over the installed build
  • Need to support new standalone examples (once that is supported in general)

This may require an extra cmake configuration flag to support local builds, but ideally it should be impliciy (look in built path before system?).

This should also add alias targets for FLAMEGPU::flamegpu etc, although this may be achieved implicitly by generating a config file.

This also requires improving how RTC is made aware of include paths, i.e. GLM via GLM_PATH passed in as an absolute path at build time is unlikely to be portable with installation.

ptheywood avatar May 12 '20 11:05 ptheywood

Useful references:

https://cmake.org/cmake/help/git-stage/guide/importing-exporting/index.html#exporting-targets

https://cmake.org/cmake/help/v3.18/manual/cmake-packages.7.html#creating-relocatable-packages

ptheywood avatar Aug 23 '21 10:08 ptheywood

Good example from another RSE Sheffield project at CERN: https://gitlab.cern.ch/VecGeom/VecGeom

mondus avatar Nov 02 '22 09:11 mondus