Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modernise Dependent & Included CMake Projects #664

Closed
8 tasks done
ptheywood opened this issue Aug 26, 2021 · 1 comment
Closed
8 tasks done

Modernise Dependent & Included CMake Projects #664

ptheywood opened this issue Aug 26, 2021 · 1 comment
Assignees
Labels

Comments

@ptheywood
Copy link
Member

ptheywood commented Aug 26, 2021

Creating this central issue rather than N smaller issues in each other repository.

Once #661 is merged, other FLAMEGPU2-* repos should have a similar (but much less substantial) improvments made to their CMake to modernise them and enforce the same CMake minimum version.

In general these changes should be relatively minimal.

The Visualiser may benefit from a bit more effort, as it get's effecitvely upstream from the main repository.

Things to consider:

  • Do not modify CMAKE_<LANGUAGE>_FLAGS
  • Use per target properties / functions. Private where possible, public/interface where required
  • Potentially add an aliased FLAMEGPU::flamegpu target? This might need some thought. This may also not be sensible until CMake install project #260 as this might change how it works, and less breaking changes is better?
  • Pin against non-master FLAMEGPU2. May impact Example Suite Repository/Repositories #603.

In general, look at the diff of #661 for inspiration.

It may be worth waiting until #653 is figured out too, to reduce effort.

Repos:

  • FLAMEGPU/FLAMEGPU2-visualiser
  • FLAMEGPU/FLAMEGPU2-example-template
  • FLAMEGPU/FLAMEGPU2-tutorial-cudacpp
  • FLAMEGPU/FLAMEGPU2-ensemble-benchmark
  • FLAMEGPU/FLAMEGPU2-concurrency-benchmark
  • FLAMEGPU/FLAMEGPU2-circles-benchmark
  • FLAMEGPU/FLAMEGPU2-CINECA
  • FLAMEGPU/FLAMEGPU2-python-example-template (probably not required)
@ptheywood ptheywood self-assigned this Aug 26, 2021
@ptheywood ptheywood changed the title Modernise Dependent & include project CMake Modernise Dependent & Included CMake Projects Aug 26, 2021
@ptheywood ptheywood modified the milestones: v2.0.0-alpha.1, v2.0.0-alpha.2 Sep 1, 2021
@ptheywood
Copy link
Member Author

CMake in the visualiser repo has been modernised to match the main repo previously.

Other repositories contain minimal CMake, so no real modernisation required. The Finding of FLAME GPU will be improved once we have the abillity to install flamegpu #260.

I've updated each standalone repo which uses cmake to pull in the main repository to pin against v2.0.0-alpha.1, as this will allow us to make breaking changes to APIs without having to udpate all standalone repos (if we don't want to maintain all of them at all times).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant