Задать вопрос
jov
@jov

Альтернатива для AC_CHECK_HEADERS в CMake

Сейчас пытаюсь перевести проект с Autoconf на CMake. Возник ряд вопросов.
1. Что делать с конструкций вида
AC_CHECK_HEADERS(stdio.h stdlib.h string.h)
понятно, просто делаем несколько вызовов подобных
check_include_file("stdio.h" HAVE_STDIO_H)
А вот как поступить с
с AC_CHECK_HEADERS(resolv.h, [], [], [
#ifdef HAVE_SYS_TYPES_H
#  include <sys/types.h>
#endif
])
для меня остаётся вопросом. Если я правильно понял документацию к autoconf, четвёртым параметром передаются инструкции препроцессору которые он должен подключить к тест-файлу перед тем, что переданно первым. Объясните пожалуйста профану в этой области, а то никак сообразить не могу.
  • Вопрос задан
  • 2746 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@asl
Если верить документации (http://www.vtk.org/Wiki/CMake:How_To_Write_Platform_Checks), то надо делать как-то так:

CHECK_INCLUDE_FILES("sys/types.h;resolv.conf" HAVE_RESOLV_CONF)

Для более сложных вещей (например, не просто включения других инклудов до) надо будет писать уже свой модуль для cmake'а… Ну, кроме того есть и переменная CMAKE_EXTRA_INCLUDE_FILES.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ixSci
@ixSci
Вы бы описали, чего хотите добиться. Не все кто знает CMake знают Autoconf и не всё, что есть в Autoconf(я полагаю) напрямую соотносится с функционалом CMake
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы