Я бы поместил два пакета в отдельные подкаталоги и получил бы Makefile
с чем-то вроде этого:
.PHONY: all hoopl hoop-core
all : hoopl
hoopl : hoopl-core
cd hoopl && cabal build && cabal register --inplace
hoopl-core
cd hoopl-core && cabal build && cabal register --inplace
это предполагает, что вы загрузили процесс, сначала собрав ядро hoopl и зарегистрировав его (--inplace
), а затем собрав hoopl
. Вы можете автоматизировать больше, используя Makefile.
Как вы знаете, когда мы хотели подобную функциональность для GHC, мы вместо этого написали нашу собственную систему сборки ;-) Я не рекомендую этого. Технически я полагаю, что было бы возможно извлечь из системы сборки GHC требуемые части и сделать фреймворк многократного использования, хотя ...