summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorJoey Hess <joeyh@joeyh.name>2016-11-11 15:01:55 -0400
committerJoey Hess <joeyh@joeyh.name>2016-11-11 15:02:25 -0400
commitfc35e5f3a3b932e615b3e15eceb2c3a3da2be098 (patch)
treedc4005e864faa99167e292b2b5ae9d4bbcb9cd55 /Makefile
parent962e279e17c1f3cf3be49ffdfb5e7310711a220c (diff)
downloadgit-repair-fc35e5f3a3b932e615b3e15eceb2c3a3da2be098.tar.gz
sync makefile with git-annex's
* Makefile: Support building with stack as well as cabal. * Makefile: The CABAL variable has been renamed to BUILDER.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile23
1 files changed, 17 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index f4acea5..bd2ac44 100644
--- a/Makefile
+++ b/Makefile
@@ -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 $$(find .stack-work/ -name git-repair -type f | grep build/git-annex/git-repair | tail -n 1) 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