Я пытаюсь создать строку версии, которая при использовании рассматривается как символ *.
Я сейчас использую
#define VERSION_MAJOR @cmakeproject_VERSION_MAJOR@
#define VERSION_MINOR @cmakeproject_VERSION_MINOR@
#define VERSION_PATCH @cmakeproject_VERSION_PATCH@
#define VERSION_STRING "" VERSION_MAJOR "." VERSION_MINOR "." VERSION_PATCH
После настройки cmake это будет выглядеть как
#define VERSION_MAJOR 1
#define VERSION_MINOR 2
#define VERSION_PATCH 3
#define VERSION_STRING "" VERSION_MAJOR "." VERSION_MINOR "." VERSION_PATCH
Насколько я понимаю, VERSION_STRING во время компиляции будет выглядеть как
"" 1 "." 2 "." 3
И это приводит к ошибке: ожидается ‘)’ перед числовой константой
Есть ли способ сделать так, чтобы VERSION_STRING во время компиляции выглядел как "1.2.3"?