Я пытаюсь создать freetype2, используя мою собственную систему сборки (я не хочу использовать Jam, и я готов поставить время, чтобы понять это). Я нашел что-то странное в заголовках. Freetype определяет макросы следующим образом:
#define FT_CID_H <freetype/ftcid.h>
а затем использует их позже:
#include FT_CID_H
Я не думал, что это возможно, и действительно, Clang 3.9.1 жалуется:
error: expected "FILENAME" or <FILENAME>
#include FT_CID_H
- В чем смысл этих макросов?
- Является ли это допустимым C/С++?
- Как убедить Клана разобрать эти заголовки?
Это связано с Как использовать макрос в директиве #include?, но отличается тем, что здесь речь идет о компиляции freetype, а не о создании нового кода.