workaround ghc weirdness with -odir
The option cause it to always build to build/Main.o, no matter what binary it was building. This caused extra work, and in some cases, could cause the wrong code to be put into the final binary.
This commit is contained in:
parent
55ca64d851
commit
f189929b8b
3 changed files with 8 additions and 10 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -1,4 +1,5 @@
|
|||
build/*
|
||||
*.hi
|
||||
*.o
|
||||
test
|
||||
configure
|
||||
SysConfig.hs
|
||||
|
|
7
Makefile
7
Makefile
|
@ -1,6 +1,6 @@
|
|||
PREFIX=/usr
|
||||
GHCFLAGS=-O2 -Wall
|
||||
GHCMAKE=ghc -odir build -hidir build $(GHCFLAGS) --make
|
||||
GHCMAKE=ghc $(GHCFLAGS) --make
|
||||
|
||||
bins=git-annex git-annex-shell
|
||||
mans=git-annex.1 git-annex-shell.1
|
||||
|
@ -29,11 +29,11 @@ install: all
|
|||
rsync -a --delete html/ $(DESTDIR)$(PREFIX)/share/doc/git-annex/html/; \
|
||||
fi
|
||||
|
||||
test:
|
||||
test: $(bins)
|
||||
$(GHCMAKE) test
|
||||
./test
|
||||
|
||||
testcoverage:
|
||||
testcoverage: $(bins)
|
||||
rm -f test.tix test
|
||||
ghc -odir build/test -hidir build/test $(GHCFLAGS) --make -fhpc test
|
||||
./test
|
||||
|
@ -59,5 +59,6 @@ docs: $(mans)
|
|||
clean:
|
||||
rm -rf build $(bins) $(mans) test configure SysConfig.hs *.tix .hpc
|
||||
rm -rf doc/.ikiwiki html
|
||||
find . \( -name \*.o -or -name \*.hi \) -exec rm {} \;
|
||||
|
||||
.PHONY: $(bins) test install
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{- git-annex main program
|
||||
{- git-annex main program stub
|
||||
-
|
||||
- Copyright 2010 Joey Hess <joey@kitenet.net>
|
||||
-
|
||||
|
@ -7,12 +7,8 @@
|
|||
|
||||
import System.Environment
|
||||
|
||||
import qualified GitRepo as Git
|
||||
import CmdLine
|
||||
import GitAnnex
|
||||
|
||||
main :: IO ()
|
||||
main = do
|
||||
args <- getArgs
|
||||
gitrepo <- Git.repoFromCwd
|
||||
dispatch gitrepo args cmds options header
|
||||
run args
|
||||
|
|
Loading…
Reference in a new issue