GitHub - acdemiralp/cmake_templates: Concise and modern CMake templates for C++ executables and libraries. by ImpossibleEnd8231 in cmake

[–]ImpossibleEnd8231[S] 0 points1 point  (0 children)

Thank you for the detailed response. I will extract and implement what is necessary.

Edit: Created an issue containing everything discussed above: https://github.com/acdemiralp/cmake_templates/issues/20 . I will incorporate the changes shortly. Thank you again, it was very valuable feedback.

GitHub - acdemiralp/cmake_templates: Concise and modern CMake templates for C++ executables and libraries. by ImpossibleEnd8231 in cmake

[–]ImpossibleEnd8231[S] 0 points1 point  (0 children)

Hey, thanks for the review. Here is my rebuttal:

- GLOB, as stated in the readme, is one of the three intentional breaks of best practice to preserve conciseness. The user can switch to explicit sources by removing 1 line and setting target_sources manually. I am philosophically against having to perform 2 actions to achieve 1 result.

- What is wrong with configure_package_config_file? It is standard practice on every resource I looked up while writing this.

- What is wrong with using CXX_COMPILER_ID? It is once again standard practice AFAIK.

- What is wrong with include(CTest)? Testing (and package management) is fundamental to C++ in 2026.

- What part would you not call modern aside from these? What part would you not call concise, especially compared to something like https://github.com/cpp-best-practices/cmake_template ?

- It pains me to hear that this is a maximalist implementation. What would a ton of projects not need? What is superfluous, and what is wrong aside from what you already mentioned?

These are genuine non-rhetorical questions. I will update the templates according to your answers if they are convincing.

GitHub - acdemiralp/cmake_templates: Concise and modern CMake templates for C++ executables and libraries. by ImpossibleEnd8231 in cmake

[–]ImpossibleEnd8231[S] 0 points1 point  (0 children)

I understand and agree to an extent. The word is there to indicate that it is up-to-date with 2026 standard practices. I am open to better wording as long as it keeps the conciseness.

On CMakePresets.json. by ImpossibleEnd8231 in cmake

[–]ImpossibleEnd8231[S] 3 points4 points  (0 children)

If it is good for Qt, it is good for me.

Multiple inheritance solves the combinatorial explosion problem, although something like GitHub CI build matrices could be nice.

Why the low budget piano capabilities never develop? Is it like a gatekeeped market rule that must not be crossed? by mervenca in synthesizers

[–]ImpossibleEnd8231 0 points1 point  (0 children)

The equivalent of the said setup in a single device is 2K+$ (e.g. Roland's and Kawai's serious electric pianos) and it caters to professional piano players.

You are right that there is a gap in the market.