Библиотека pycups-1.9.48 не собирается на Mac OS 10.6, если я не удалю этот ifdef:
#ifdef __SVR4
/*
* A rudimentary emulation of getline() for systems that dont support it
* natively. Since this is used for PPD file reading, it assumes (possibly
* falsely) that BUFSIZ is big enough.
*/
ssize_t
getline(char **line, size_t *linelen, FILE *fp)
{
...
Я предполагаю, что __SVR4 определен где-то в среде компиляции SVR4, так что препроцессор знает, что он должен включать эту реализацию getline для homebrew. Как называется этот механизм? Поиск в Google для __SVR4 на самом деле вызывает много обращений к исходному коду, и люди обсуждают исходный код.
И, вообще говоря, есть ли эквивалентный символ для Snow Leopard, чтобы я мог компилировать этот код, не изучая autoconf или не редактируя его вручную?