dascandy / evoke

Magic build tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Just use CMake as a build system, and modern CMake best practices

Quincunx271 opened this issue · comments

I've noticed a number of build system files for evoke: there's a Makefile, a CMakeLists.txt, and a build-windows.ninja. If it's desirable, I could set up evoke to just use modern CMake.

Some advantages:

  • Just one build system to manage
  • Uses the de facto standard C++ build system
  • I would probably be able to set up an appveyor.yml file

Yes I agree that sticking to a single system would be better. Currently CMake builds the project on all desktop platforms. It's just missing explicit pthreads linkage for gcc, which I've added in the current pull request today.

The idea with the makefile is to not require people to install cmake first. Practically though, I hope that most people would never build it at all but just install it from their OS' normal package manager... or some executable on the internet for Windows given that there's no package manager.

As such, I'll drag in @MoAlyousef's pull request because it does fix this. I'll remove the ninja & makefile as those were temporary in the hope that we wouldn't need cmake - but you're right here.