diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 28 |
1 files changed, 17 insertions, 11 deletions
@@ -1,14 +1,25 @@ +# set to "./Setup" if you lack a cabal program. Or can be set to "stack" +BUILDER?=cabal +GHC?=ghc + PREFIX=/usr -CABAL?=cabal # set to "./Setup" if you lack a cabal program build: Build/SysConfig.hs - $(CABAL) build - ln -sf dist/build/git-repair/git-repair git-repair + $(BUILDER) build $(BUILDEROPTIONS) + if [ "$(BUILDER)" = stack ]; then \ + ln -sf $$(stack path --dist-dir)/build/git-annex/git-repair git-repair; \ + else \ + ln -sf dist/build/git-repair/git-repair git-repair; \ + fi @$(MAKE) tags >/dev/null 2>&1 & -Build/SysConfig.hs: configure.hs Build/TestConfig.hs Build/Configure.hs - if [ "$(CABAL)" = ./Setup ]; then ghc --make Setup; fi - $(CABAL) configure --ghc-options="$(shell Build/collect-ghc-options.sh)" +Build/SysConfig.hs: Build/TestConfig.hs Build/Configure.hs + if [ "$(BUILDER)" = ./Setup ]; then ghc --make Setup; fi + if [ "$(BUILDER)" = stack ]; then \ + $(BUILDER) build $(BUILDEROPTIONS); \ + else \ + $(BUILDER) configure --ghc-options="$(shell Build/collect-ghc-options.sh)"; \ + fi install: build install -d $(DESTDIR)$(PREFIX)/bin @@ -22,11 +33,6 @@ clean: find . -name \*.o -exec rm {} \; find . -name \*.hi -exec rm {} \; -# Upload to hackage. -hackage: clean - ./Build/make-sdist.sh - @cabal upload dist/*.tar.gz - # hothasktags chokes on some template haskell etc, so ignore errors tags: (for f in $$(find . | grep -v /.git/ | grep -v /tmp/ | grep -v /dist/ | grep -v /doc/ | egrep '\.hs$$'); do hothasktags -c --cpp -c -traditional -c --include=dist/build/autogen/cabal_macros.h $$f; done) 2>/dev/null | sort > tags |