Как мне создать простой проект с помощью Cabal?

Вики Haskell утверждают, что вы должны использовать Cabal в качестве системы сборки. Однако мне кажется, что он больше направлен на создание пакетов, чем просто на сборку двоичных файлов. По сути, все, что я хочу сделать, это собрать каждый файл *.hs в моем каталоге src/ в отдельный двоичный файл в bin/. Этот make-файл отлично справляется с этой задачей, но я хочу узнать о Cabal, и это хороший пример для начала:

GHC = ghc
GHCFLAGS = -outputdir bin
SRC = $(wildcard src/*.hs)
BIN = $(patsubst src/%.hs,%,$(SRC))

all: $(addprefix bin/, $(BIN))

bin/%: src/%.hs
    $(GHC) $(GHCFLAGS) $< -o $@

clean:
    rm bin/*
7
задан Psirus 15 February 2012 в 19:50
поделиться