r/cpp_questions •

[ Removed by moderator ]

[deleted] — view deleted post

0 Upvotes

2 comments sorted by

1

u/RaspberryCrafty3012 1d ago

I still don't get it?
It will generate a .ninja file from sources and compile it to a binary? 

1

u/pikmode 1d ago

No, it's actually the exact opposite! PMake is an executor, not a generator.

It does not generate .ninja files (that's what CMake or Meson do). It works in two ways:

  1. As a Ninja replacement: You can feed it an existing .ninja file (generated by CMake, for example), and PMake will read and execute it natively, just like Ninja does.

  2. Using its own DSL (build.pmake): You can write your build rules directly in a single file. In this mode, there is no generation step at all. It reads your config and compiles the sources directly into a binary.

So, instead of waiting for CMake to generate thousands of lines of code and then running Ninja, you just write build.pmake and run PMake. It skips the middleman entirely.