Commit graph

55 commits

Author SHA1 Message Date
Joey Hess
84a9fee6f2 fix sdist to include symlinks, without which it doesn't build
oops.. will upload a new minor version to hackage
2011-07-02 17:10:43 -04:00
Joey Hess
6488278610 cabal sdist: plan C 2011-07-02 14:58:01 -04:00
Joey Hess
b3ab44f8bb add a filelist for cabal sdist
I hate hard-coded 40 kilobyte lone file lists, and just once would like to
see a build system that does not assume it's a good idea to have a file
list, or a hardcoded file list, or a file list that can only be generated
with a crippled form of globs. But not today, thank you cabal.
2011-06-30 15:37:35 -04:00
Joey Hess
ee3a0551a7 Merge branch 'master' into v3
Conflicts:
	debian/changelog
2011-06-30 15:01:08 -04:00
Joey Hess
56aeeb4565 cabal can now be used to build git-annex.
This is substantially slower than using make, does not build or install
documentation, does not run the test suite, and is not particularly
recommended, but could be useful to some.
2011-06-30 14:55:03 -04:00
Joey Hess
c0fbd3017f ssh 2011-06-22 20:42:00 -04:00
Joey Hess
c835166a7c add git-union-merge
This is a new git subcommand, that does a generic union merge operation
between two refs, storing the result in a branch. It operates efficiently
without touching the working tree. It does need to write out a temporary
index file, and may need to write out some other temp files as well.

This could be useful for anything that stores data in a branch,
and needs to merge changes into that branch without actually checking the
branch out. Since conflict handling can't be done without a working copy,
the merge type is always a union merge, which is fine for data stored in
log format (as git-annex does), or in non-conflicting files
(as pristine-tar does).

This probably belongs in git proper, but it will live in git-annex for now.

---

Plan is to move .git-annex/ to a git-annex branch, and use git-union-merge
to handle merging changes when pulling from remotes.

Some preliminary benchmarking using real .git-annex/ data indicates
that it's quite fast, except for the "git add" call, which is as slow
as "git add" tends to be with a big index.
2011-06-20 21:37:18 -04:00
Joey Hess
db540b746b don't optimise test suite
This avoids needing to adjust -fspec-constr-count, which
continues to need high values (> 8 now) when building the test suite.
2011-05-15 12:32:18 -04:00
Joey Hess
49efc6c399 add -fspec-constr-count workaround
ghc 7 produces these warnings http://hackage.haskell.org/trac/ghc/ticket/4288
The specialization is enabled by -O2, and the default limit of 3 is
there to avoid specialization blowing up binary size. Perhaps that default
is a little low? I needed 4 to avoid a warning on Unused.hs, and 5 to avoid
warnings on test.hs
2011-04-29 13:12:26 -04:00
Joey Hess
8512a4a1a1 Remove testpack from build depends, as it is not available on all architectures.
The test suite will not be run if it cannot be compiled.

It may be possible later to split off the quickcheck using tests into
a separate program and keep most of the tests using just hunit.
2011-04-25 12:43:22 -04:00
Joey Hess
82347fc5ab seems -rtsopts is needed now for profiling 2011-04-21 11:23:44 -04:00
Joey Hess
788fcc2bb4 typo 2011-04-06 21:41:13 -04:00
Joey Hess
094983a2bd support PROFILE=1 to enable profiling 2011-04-05 14:00:51 -04:00
Joey Hess
9c96d86502 nasty hack to build when hS3 is not available
So, it would be nicer to just use Cabal and take advantage
of its conditional compilation support. But, Cabal seems to
lack good support for a package with an internal library that is used by
multiple executables. It wants to build everything twice or more.
That's too slow for me.

Anyway, fairly soon, I expect to upgrade hS3 to a requirment, and I
can just revert this.
2011-03-30 01:32:05 -04:00
Joey Hess
cf99575d74 update 2011-03-28 12:09:47 -04:00
Joey Hess
9f9325aa3d clean too 2011-03-22 18:51:14 -04:00
Jimmy Tang
c44c318eaf Touch up Makefile to depend on StatFS.hs 2011-03-22 18:43:54 -04:00
Joey Hess
25605d18fd generalize 2011-03-22 15:39:36 -04:00
Joey Hess
9d49fe2c17 first pass at using new keys
It compiles. It sorta works. Several subcommands are FIXME marked and
broken, because things that used to accept separate --backend and --key
params need to be changed to accept just a --key that encodes all the key
info, now that there is metadata in keys.
2011-03-15 21:34:13 -04:00
Joey Hess
bc5c54c987 symlink touching fun
When adding files to the annex, the symlinks pointing at the annexed
content are made to have the same mtime as the original file. While git
does not preserve that information, this allows a tool like metastore to be
used with annexed files.
2011-03-14 23:00:23 -04:00
Joey Hess
45387b3fcb Deal with the mtl/monads-fd conflict. 2011-02-08 15:11:49 -04:00
Joey Hess
778966b4f4 improve man building 2011-01-25 18:54:27 -04:00
Joey Hess
4465689cc2 refactor 2011-01-19 20:02:48 -04:00
Joey Hess
f189929b8b 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.
2011-01-07 02:15:23 -04:00
Joey Hess
87f424eca7 more tests 2011-01-06 21:39:26 -04:00
Joey Hess
aedc46caca cleanup 2011-01-04 21:07:58 -04:00
Joey Hess
759e860e4b add testcoverage target using hpc
added a test for key read and show
2011-01-04 21:05:31 -04:00
Joey Hess
7a52b34e06 add git-annex-shell command
This is not yet complete, as it does not allow starting rsync or scp.
2010-12-30 16:52:24 -04:00
Joey Hess
67c5036579 Makefile: Add GHCFLAGS variable. 2010-12-12 13:17:53 -04:00
Joey Hess
b805b9ae66 Makefile: Add GHCOPTS variable. 2010-12-12 13:16:34 -04:00
Joey Hess
98ad5402d9 Makefile: Install man page and html (when built). 2010-12-12 13:15:16 -04:00
Joey Hess
3a252efd9d releasing version 0.12 2010-12-11 17:37:24 -04:00
Joey Hess
10484a69b8 Makefile: Add PREFIX variable. 2010-12-11 17:29:50 -04:00
Joey Hess
6f932a0963 avoid building news page when building doc wiki for package 2010-12-02 21:37:55 -04:00
Joey Hess
161823d6ea Only use cp -a if it is supported, falling back to cp -p or plain cp.
* cp --reflink=auto is used if supported, and will make git annex unlock
  much faster on filesystems like btrfs that support copy of write.
2010-11-18 13:49:01 -04:00
Joey Hess
54513c69ba Add configure step to build process.
* configure: Check to see if cp -a can be used.
* configure: Check to see if cp --reflink=auto can be used.
2010-11-18 13:30:42 -04:00
Joey Hess
0b57b68918 deal with OSX case brokenness
HELLO, it's 2010.. POSIX calling..
2010-11-14 17:56:12 -04:00
Joey Hess
b5ce88dd2a build with -O2 2010-11-11 17:04:00 -04:00
Joey Hess
58fffdb73b remove unnecessary mkdir 2010-11-11 15:34:28 -04:00
Joey Hess
515d6b6c7d Avoid using runghc to run test suite as it is not available on all architectures. Closes: #603006 2010-11-10 10:49:35 -04:00
Joey Hess
d93a372894 add a stupid test harness 2010-11-02 16:49:35 -04:00
Joey Hess
e379307900 better message when ikiwiki is not available 2010-11-01 20:27:30 -04:00
Joey Hess
1576c48c80 more Wall cleaning 2010-10-31 14:32:18 -04:00
Joey Hess
963bfa9673 cpp not needed 2010-10-30 22:47:34 -04:00
Joey Hess
23da029b75 Support building with Debian stable's ghc. 2010-10-30 15:10:10 -04:00
Joey Hess
5b4272aba3 update 2010-10-22 15:12:48 -04:00
Joey Hess
19fde4960d new fromkey subcommand, for registering urls, etc
had to redo Annex monad's flag storage
2010-10-21 16:30:16 -04:00
Joey Hess
9d5b8ebab0 update 2010-10-19 19:28:29 -04:00
Joey Hess
d6911f57b7 update 2010-10-19 16:17:29 -04:00
Joey Hess
7bc4435ffd update 2010-10-19 15:59:40 -04:00