Мне нужно использовать файл для одного из моих тестов, написанного с использованием Check. Я изначально жестко закодировал путь, который работал нормально. Однако это не сработало, когда код был создан вне исходного каталога. Я придумал следующее решение, которое несколько работает. (Я тогда префикс имен путей с TESTS_DIR
)Использование файлов в Check check cases
# Set correct directory for test files
AS_IF([test "x$srcdir" = x.],
[TESTS_DIR=""],
[TESTS_DIR="$srcdir/tests/"])
AC_DEFINE_UNQUOTED([TESTS_DIR], ["$TESTS_DIR"], [directory for test files])
К сожалению, это не удается снова make distcheck
. Я могу опубликовать конкретные макеты и структуры пути, но мне интересно, есть ли «простой» способ ссылаться на файлы в исходном каталоге во всех этих случаях. Благодаря!
UPDATE: Я пытался использовать абсолютные пути, но, кажется $abs_top_srcdir
не установлен, когда я пытался обновить определить в configure.ac
. Любые мысли о том, почему это так, будут оценены.
Относительные пути? – dirkgently
Как? Как вы можете видеть, я попытался найти относительный путь, который работает во всех сценариях. Нет кубиков. На самом деле, я, наверное, был бы счастливее с абсолютным путем. Если пользователь должен перенастраиваться при перемещении каталогов, это еще не конец света. Но правильное решение с использованием относительных путей было бы идеальным. –