summaryrefslogtreecommitdiff
path: root/Makefile
Commit message (Collapse)AuthorAge
* force C compiler to build 32 bit on OSX when 32 bit ghc is being usedGravatar Joey Hess2012-07-24
|
* Version build dependency on STM, and allow building without it, which ↵Gravatar Joey Hess2012-06-26
| | | | disables the watch command.
* skeleton C library for calling kqueueGravatar Joey Hess2012-06-18
|
* Teach _Makefile_ to only do _-DWITH_INOTIFY_ when on a Linux machine.Gravatar Jimmy Tang2012-06-18
|
* make inotify a build flag etcGravatar Joey Hess2012-06-17
|
* fix make-sdist to omit too long filenamesGravatar Joey Hess2012-06-15
|
* Simplify git-annex.cabal and generate sdist with make-sdist.sh.Gravatar Nathan Collins2012-06-12
| | | | | | | | | | The `cabal install` is happy as long as the files it needs are present, but `cabal sdist` will only package up files you tell it to. So, generate the source tarball ourselves. The source tarball is generated by make-sdist.sh, which uses cabal sdist to calculate the package name. Could also generate the name from the 'Version:' field in git-annex.cabal.
* Merge branch 'master' into cabal-man-pagesGravatar Nathan Collins2012-06-11
|\
* | Refactor generation of git-annex.cabal and incorporate man pages.Gravatar Nathan Collins2012-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The existing `sed | find | perl` hack in the Makefile was not including the man pages in the generated git-annex.cabal. I couldn't figure out why it didn't work; running the `find | perl` part of the command *did* list the man pages ... So, I set up a new hack. It produces a cleaner .cabal file and includes the man pages in the sdist. I changed git-annex.cabal and its generation as follows: - git-annex.cabal is now generated by a here document in git-annex.cabal.template.sh. The here document has inline file list insertion, whereas before the file lists were inserted with sed. - The 'Extra-Source-Files:' field now only includes the non-source files: the man pages, plain text documentation, and license. - The source dependencies are now listed in 'Other-Modules' sections in the 'Executable' and 'Test-Suite' sections. The list of dependencies is generated by `gen-other-modules.sh`. - The ./debian and ./doc are no longer included in the sdist package. These were not installed anywhere by `cabal install`. A user that wants them could clone the git repo. Running the tests with cabal is not yet working, i.e. cabal configure --enable-tests && cabal build && cabal test and cabal install --enable-tests fail to find Utility.Touch. However, I did not break this: it doesn't work for the git-annex package on Hackage either. Next step is to figure out how to deal with HSC in cabal ... or not bother, because `make test` works. I'm worried this is a cabal bug. To test building from sdist, I've been running cd ../.. ; cabal sdist ; cd dist ; tar xf git-annex-3.20120605.tar.gz && cd git-annex-3.20120605 && rm -fr /tmp/git-annex && cabal install --prefix=/tmp/git-annex && tree -A /tmp/git-annex in the dist directory. Using `cabal-dev install` is a better test, but is very slow.
* | Fix Makefile dependencies for `make test`.Gravatar Nathan Collins2012-06-10
| |
| * Makefile: ignore monads-tf in favour of mtlGravatar Sergei Trofimovich2012-06-10
| | | | | | | | | | | | | | | | | | | | | | | | | | Fixes build breakage when both 'mtl' and 'monads-tf' are present: $ make git-annex > ghc -O2 -Wall -ignore-package monads-fd -outputdir tmp -IUtility -DWITH_S3 --make git-annex Utility/libdiskfree.o > > Common.hs:6:8: > Ambiguous module name `Control.Monad.State.Strict': > it was found in multiple packages: monads-tf-0.1.0.0 mtl-2.1.1 > make: *** [git-annex] Error 1 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
* | Make man pages when making sdist.Gravatar Nathan Collins2012-06-09
| |
* | Make standalone man-page installation possibleGravatar Nathan Collins2012-06-05
|/ | | | | | The `cabal install git-annex` doesn't install the man pages, and the Makefile only installed the man pages as part of a full build/install. So, I factored out the documentation parts of the Makefile.
* use LANGUAGE CPP pragma, avoids running cpp on all the other sourcesGravatar Joey Hess2012-04-17
|
* cabal file now autodetects whether S3 support is available.Gravatar Joey Hess2012-04-14
|
* Renamed diskfree.c to avoid OSX case insensativity bug.Gravatar Joey Hess2012-04-13
|
* releasing version 3.201204053.20120405Gravatar Joey Hess2012-04-05
|
* Rewrote free disk space checking codeGravatar Joey Hess2012-03-22
| | | | | Moving the portability handling into a small C library cleans up things a lot, avoiding the pain of unpacking structs from inside haskell code.
* shave some 12 mb from the installed sizeGravatar Joey Hess2012-03-15
| | | | | | * git-annex now behaves as git-annex-shell if symlinked to and run by that name. The Makefile sets this up, saving some 8 mb of installed size. * git-union-merge is a demo program, so it is no longer built by default.
* makefile tweaksGravatar Joey Hess2012-03-15
| | | | Put build cruft in a subdir
* remove cruftGravatar Joey Hess2012-03-10
|
* remove -fspec-constr-count workaroundGravatar Joey Hess2012-02-27
| | | | not needed with ghc 7.4
* add a configure check for StatFSGravatar Joey Hess2012-01-15
| | | | | | | | | | | | This way, the build log will indicate whether StatFS can be relied on. I've tested all the failing architectures now, and on all of them, the StatFS code now returns Nothing, rather than Just nonsense. Also, if annex.diskreserve is set on a platform where StatFS is not working, git-annex will complain. Also, the Makefile was missing the sources target used when building with cabal.
* add hackage targetGravatar Joey Hess2012-01-13
|
* remove S3stub stuffGravatar Joey Hess2012-01-05
| | | | | Let's keep that in a no-s3 branch, which can be merged into eg, debian-stable.
* Added quickcheck to build dependencies, and fail if test suite cannot be built.Gravatar Joey Hess2012-01-03
|
* increate spec-constr-countGravatar Joey Hess2011-12-30
| | | | Was getting SpecConstr warnings on Command.Find
* noteGravatar Joey Hess2011-12-20
|
* remove seemingly unneeded dependenciesGravatar Joey Hess2011-12-20
|
* add make fast targetGravatar Joey Hess2011-11-10
|
* fast build mode for vimGravatar Joey Hess2011-11-09
|
* propigate test suite failureGravatar Joey Hess2011-10-06
| | | | (but not test suite build failure)
* Fix build without S3.Gravatar Joey Hess2011-09-07
|
* Fix Makefile to work with cabal again.Gravatar Joey Hess2011-09-06
|
* guess not everyone configures their shell to show nonzero exit codes..Gravatar Joey Hess2011-08-27
|
* moved files aroundGravatar Joey Hess2011-08-20
|
* add a nasty workaround for a nasty cabal limitationGravatar Joey Hess2011-07-07
| | | | | It croaks on long filenames.. probably >= 100 chars 100 characters was a (historial) limit on filenames in tarballs.
* fix sdist to include symlinks, without which it doesn't buildGravatar Joey Hess2011-07-02
| | | | oops.. will upload a new minor version to hackage
* cabal sdist: plan CGravatar Joey Hess2011-07-02
|
* add a filelist for cabal sdistGravatar Joey Hess2011-06-30
| | | | | | | 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.
* Merge branch 'master' into v3Gravatar Joey Hess2011-06-30
|\ | | | | | | | | Conflicts: debian/changelog
| * cabal can now be used to build git-annex.Gravatar Joey Hess2011-06-30
| | | | | | | | | | | | 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.
* | sshGravatar Joey Hess2011-06-22
|/
* add git-union-mergeGravatar Joey Hess2011-06-20
| | | | | | | | | | | | | | | | | | | | | | | | | 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.
* don't optimise test suiteGravatar Joey Hess2011-05-15
| | | | | This avoids needing to adjust -fspec-constr-count, which continues to need high values (> 8 now) when building the test suite.
* add -fspec-constr-count workaroundGravatar Joey Hess2011-04-29
| | | | | | | | 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
* Remove testpack from build depends, as it is not available on all architectures.Gravatar Joey Hess2011-04-25
| | | | | | | 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.
* seems -rtsopts is needed now for profilingGravatar Joey Hess2011-04-21
|
* typoGravatar Joey Hess2011-04-06
|
* support PROFILE=1 to enable profilingGravatar Joey Hess2011-04-05
|