Подключение инструмента сборки в Кабале (Хаскелл)

Я пытался использовать bnfc инструмент для генерации множества файлов, таких как лексер, парсер и т. д. для меня. Это отлично работает. Теперь я хотел бы немного разобраться с этим, так как не нужно вручную компилировать bnfc файл и иметь его генерировать ряд файлов, которые загромождают мой /src папка.

Я попробовал механизм Кабала, где вы перечислите инструмент в build-tools поле .cabal файл и укажите файлы, которые вы ожидаете extra-source-files поле. Это сработало для меня и Алекса и Хэппи, поскольку они признаны Cabal как инструменты для сборки, но bnfc нет. Есть ли способ, которым я могу подключить bnfc или какой-либо инструмент с Cabal, и Cabal распознает их как инструменты сборки?

1 ответ

Видимо, Кабал не знает о bnfc (не появляется в списке).

Похоже, что нет способа сделать это, используя только файл.cabal, но есть пример того, как подключить препроцессор в вашем Setup.hs в тестируемых источниках Cabal / PackageTests / CustomPreProcess / Setup.hs с использованием пользовательского хука hookedPreProcessors (все хуки находятся в UserHooks.hs)

Другие вопросы по тегам