Ситуация:
Пакет R, который я разрабатываю, экспортирует функцию C через R .C
.
Код в src/
, где функция определена, компилируется нормально, если libtiff установлен в ОС.
Я бы хотел, чтобы эта функция была необязательной; точно так же, как есть «предлагаемые» пакеты R, потому что это не обязательно.
Проблема
Я не нашел способа сообщить R, что компиляция функции C «предлагается». Я также не мог найти способ сделать компиляцию кода в src / optional или каким-то образом обусловить наличие libtiff в ОС.
Мои текущие Makevars говорят:
CC=ccache clang -Qunused-arguments
CXX=ccache clang++ -Qunused-arguments
CCACHE_CPP2=yes
PKG_LIBS = -ltiff
Я весь день безуспешно искал решение.
Я только что понял, как использовать Makevars для поиска libtiff:
TIFFSTATUS := $(shell $(LD) -ltiff; echo 0 || echo 1)
ifeq ($(TIFFSTATUS), 1)
... stuff?
Вопрос
Как я могу правильно сказать R, что функция, использующая .C
, является необязательной (ie зависит от доступности зависимостей libtiff).
Спасибо.