Autoconf - Куда идет config.h? - PullRequest
       54

Autoconf - Куда идет config.h?

6 голосов
/ 27 ноября 2009

Я пишу свою собственную библиотеку модульного тестирования (использующую autoconf, automake и libtool), чтобы лучше соответствовать моим потребностям (мне не нужно супер большое количество функций, только тестовый прогон и утверждения). Я дошел до того, что кажется пригодным для использования.

Конечно, он использует config.h, чтобы выяснить, какие заголовки включить. Проблема в том, что я не уверен, куда должен идти config.h, поскольку он будет легко конфликтовать с config.h другого проекта, а также с тем фактом, что он зависит от архитектуры.

Каким должен быть мой метод для установки этого заголовка? (Нужен всем остальным заголовкам)

Ответы [ 3 ]

5 голосов
/ 28 ноября 2009

Макрос ax_prefix_config_h звучит так, как вы хотите. Он предоставляет способ создания другого файла, подобного config.h, который содержит префикс информации config.h. Так, например, вместо #define HAVE_SOMETHING в config.h вы получите #define MYLIB_HAVE_SOMETHING в mylib_config.h. Довольно удобно.

2 голосов
/ 29 ноября 2009

Вы все равно не должны экспортировать config.h в интерфейс вашей библиотеки.

Эта ссылка показывает способ обойти это, если ваши установленные заголовки действительно, действительно должны зависеть от платформы. Это хрупкий метод, использующий устаревший макрос autoconf.

0 голосов
/ 27 ноября 2009

Вы можете выбрать другой файл конфигурации, изменив макрос AC_OUTPUT, хотя я не уверен, как ваш проект будет интегрироваться с другими проектами. Если это подпроект, то он все равно будет в подкаталоге.

...