Может ли makefile.am установить LDADD для набора целей? - PullRequest
1 голос
/ 13 июля 2011

Я поместил модульные тесты в один и тот же каталог исходного кода. Но как я могу установить LDADD в Makefile.am для всех этих модульных тестов, чтобы использовать определенные библиотеки (например, google test)?

1 Ответ

2 голосов
/ 13 июля 2011

Содержимое LDADD используется для всех целей, если эта переменная не переопределена с target_LDADD. Поэтому, если у вас много модульных тестов и только несколько реальных программ, вы можете использовать LDADD для модульных тестов и переопределить его для каждой программы с различными требованиями к связыванию.

LDADD = libtest.a   # Used by default for all targets

# Unit tests, using above LDADD
check_PROGRAMS = one two three
one_SOURCES = one.c
two_SOURCES = two.c
three_SOURCES = three.c

# Main program
bin_PROGRAMS = main
main_SOURCES = main.c
main_LDADD =        # Override the LDADD setting.

Аналогичный пример можно найти в документации LDADD.

...