Commit graph

297 commits

Author SHA1 Message Date
Joey Hess
b521b64cf4 build fix 2013-04-18 12:50:59 -04:00
Joey Hess
6bf44bfbc5 add missing dep 2013-04-17 11:38:55 -04:00
Joey Hess
82dfd632af only one more source file to go before the android webapp links.. but not tonight 2013-04-17 01:32:05 -04:00
Joey Hess
9fdca995de very close now.. but still so far 2013-04-17 00:51:29 -04:00
Joey Hess
96a5f19f3f squelch warnings 2013-04-16 22:46:10 -04:00
Joey Hess
9f7bef4750 propigate fail 2013-04-16 19:19:53 -04:00
Joey Hess
7f67e5f763 show part of log on compile error 2013-04-16 18:34:03 -04:00
Joey Hess
854d5c0471 ignore tmp for tags 2013-04-16 13:19:56 -04:00
Joey Hess
02459e4c66 yesod-routes stuff for android build 2013-04-15 21:02:51 -04:00
Joey Hess
ed180036d5 add some more modules used by TH splices 2013-04-15 20:49:41 -04:00
Joey Hess
d786564a85 android build fixes 2013-04-15 19:38:21 -04:00
Joey Hess
b5e97c50f4 android build fix 2013-04-15 19:14:18 -04:00
Joey Hess
34472ecbe5 build android with EvilSplicer, including webapp (doesn't 100% succeed yet) 2013-04-15 17:43:28 -04:00
Joey Hess
1117f5ba27 avoid displaying splices on the console during build
There are some insanely large ones, and that was just not nice.
Downside is all warnings and errors are also not shown during the native
part of the build (but the cross build will still show any it has).
2013-04-14 17:03:41 -04:00
Joey Hess
bd7e45bcb3 better cleaning yet 2013-04-14 16:57:37 -04:00
Joey Hess
187e8aa57a better cleaning 2013-04-14 16:50:28 -04:00
Joey Hess
b179a6af58 remove dup 2013-04-14 16:17:34 -04:00
Joey Hess
83004de111 avoid runghc 2013-04-14 16:10:38 -04:00
Joey Hess
dd7e35ed97 incremental android builds with the EvilSplicer 2013-04-14 13:43:36 -04:00
Joey Hess
1112628cdf Avoid using runghc when building the Debian package, as that needs ghci. 2013-04-07 17:15:58 -04:00
Joey Hess
7bf6ca4e0d skip files in dist 2013-03-28 15:08:29 -04:00
Joey Hess
ff912832c0 reorganize osx app, so it can be put in PATH
Move all the binaries and libraries under a bundle/ subdirectory;
so when it's in PATH only git-annex, runshell, and git-annex-webapp
will be available.
2013-03-20 14:01:05 -04:00
Joey Hess
1760a2e98c make tags in bg 2013-03-17 16:27:34 -04:00
Joey Hess
45311595ea fix running test from debian/rules 2013-03-14 16:55:12 -04:00
Joey Hess
4ac299eafb avoid double build from debian/rules 2013-03-14 16:45:54 -04:00
Joey Hess
e63a983cf1 pass -O0 in fast mode 2013-03-12 16:40:24 -04:00
Joey Hess
ccb7e5cfa4 got hdevtools working on the git-annex source tree 2013-03-12 05:51:34 -04:00
Joey Hess
d1f15e4ba5 better bg tags generation 2013-03-11 18:13:18 -04:00
Joey Hess
c961d97604 be quiet when making tags in bg 2013-03-11 15:39:24 -04:00
Joey Hess
c15023a8b4 update tags on dev build 2013-03-11 14:44:54 -04:00
Joey Hess
b889721afd switch CABAL to cabal
<joeyh> anyone know why runghc Setup.hs is behaving differently than cabal configure for me?
<joeyh> I'm getting different flags selected
<geekosaur> joeyh, runghc Setup.hs uses --global by default
<geekosaur> cabal uses --local
<nomeata> joeyh: I don’t know the reasons, but I have made similar observations as well
<geekosaur> and if that means different libraries/versions visible, that can affect flag solving
<joeyh> aha!
<monochrom> it is because Cabal authors expect normal people to use cabal-install and linux distro creators to use Setup
<monochrom> the expectation is documented nowhere
2013-03-10 17:21:13 -04:00
Joey Hess
14459a186f allow overriding CABAL 2013-03-10 16:44:03 -04:00
Joey Hess
a2d94bd627 Switch from using regex-compat to regex-tdfa, as the C regex library is rather buggy. 2013-03-08 15:29:01 -04:00
Joey Hess
459b9e8ab3 reuse fast build for make test 2013-03-07 19:07:25 -04:00
Joey Hess
051622c6da send hothasktags stderr to null 2013-03-03 23:33:22 -04:00
Joey Hess
6a52a47193 fix 2 bugs in android runshell 2013-02-28 19:12:54 -04:00
Joey Hess
843df51f06 use Setup.hs rather than depending on cabal-install
Based on a patch from Peter Simons
2013-02-28 16:08:11 -04:00
Joey Hess
0bca392206 remove Fast flag, pass -O0 to cabal 2013-02-28 16:03:35 -04:00
Joey Hess
c11aa969e5 Android: Enable test suite. 2013-02-27 23:26:14 -04:00
Joey Hess
e7b78c2eec re-enable fast autobuild from vim 2013-02-27 21:41:51 -04:00
Joey Hess
b1e1043bdb faster fast builds 2013-02-27 20:11:25 -04:00
Joey Hess
54cbbe460c make make fast work in clean tree 2013-02-27 18:21:32 -04:00
Joey Hess
497f81db79 install fix 2013-02-27 17:25:00 -04:00
Joey Hess
1615f21c9a fix broken build-stamp 2013-02-27 17:11:02 -04:00
Joey Hess
feb5470c0b disable test suite on Android
Cannot get QuickCheck to install just now.
2013-02-27 15:59:31 -04:00
Joey Hess
2b805b9589 one more android build fix 2013-02-27 15:46:44 -04:00
Joey Hess
d1dbf266f6 embed test suite into git annex; available by running: git annex test
I have seen some other programs do this, and think it's pretty cool. Means
you can test wherever it's deployed, as well as at build time.

My other reason for doing it is less happy. Cabal's handling of test suites
sucks, requiring duplicated info, and even when that's done, it fails to
preprocess hsc files here. Building it in avoids that and avoids having
to explicitly tell cabal to enable test suites, which would then make it
link the test executable every time, which is unnecessarily slow.

This also has the benefit that now "make fast test" does a max speed build
and tests it.
2013-02-27 15:38:21 -04:00
Joey Hess
7eb5c8cb51 fix android cross compile, working around cabal limitation 2013-02-27 15:16:52 -04:00
Joey Hess
2f4070b1db make test use cabal 2013-02-27 15:13:25 -04:00
Joey Hess
c234d46345 explicitly disable webapp on android 2013-02-27 14:34:53 -04:00
Joey Hess
64336f07db temporarily disable pairing on Android 2013-02-27 14:22:53 -04:00
Joey Hess
020e18e067 build fix 2013-02-27 14:14:38 -04:00
Joey Hess
da25488ad1 temporarily remove DNS flag for Android 2013-02-27 14:05:24 -04:00
Joey Hess
ef44103e85 build fix 2013-02-27 13:58:28 -04:00
Joey Hess
08473009cd got make fast back down to 20 seconds
This approach could also be used to get ./ghci back.. just munge the
extracted ghc command from cabal.
2013-02-27 03:05:33 -04:00
Joey Hess
cbd53b4a8c Makefile now builds using cabal, taking advantage of cabal's automatic detection of appropriate build flags.
The only thing lost is ./ghci

Speed: make fast used to take 20 seconds here, when rebuilding from
touching Command/Unused.hs. With cabal, it's 29 seconds.
2013-02-27 02:39:22 -04:00
Joey Hess
b117efc19b deal with http-conduit changing a data type
Pity that the library does not provide a function to extract the status
code from the StatusCodeException, so when they had to add a new field, it
breaks every single place that does it.
2013-02-27 00:07:28 -04:00
Joey Hess
ce2b4832d7 cleanup WITH_GLOB 2013-02-26 15:31:34 -04:00
Joey Hess
ab9ef9cb3f rename app 2013-02-21 16:02:25 -04:00
Joey Hess
a535cb3379 build an apk containing git-annex and a terminal emulator 2013-02-21 15:20:32 -04:00
Joey Hess
63ce1a4f71 prep release 2013-02-16 10:26:49 -04:00
Joey Hess
6e0f8c343b couple more android build fixes 2013-02-13 17:56:10 -04:00
Joey Hess
f342a0519b fix make -C 2013-02-13 16:44:46 -04:00
Joey Hess
f3b7e16293 Makefile and patches for reproducible build of utilities for android 2013-02-13 16:38:03 -04:00
Joey Hess
43f8b8873a add androidapp target
The android-utilities/ directory currently needs to be set up by hand to
contain busybox, etc.
2013-02-13 14:31:22 -04:00
Joey Hess
a7ef05a988 configure: hardcode some things that cannot be probed for when cross-compiling for Android 2013-02-11 16:56:30 -04:00
Joey Hess
521398cc3d Now uses the Haskell Glob library, rather than pcre-light, avoiding the need to install libpcre. Currently done only for Cabal or when the Makefile is made to use -DWITH_GLOB 2013-02-11 11:47:53 -04:00
Joey Hess
a86fe5ae94 update for path in newer ghc-android 2013-02-11 11:47:39 -04:00
Joey Hess
43b4b7d43a can now build Android targeted binary
Various things that don't work on Android are just ifdefed out.

* the webapp (needs template haskell for arm)
* --include and --exclude globbing (needs libpcre, which is not ported;
  probably I'll make it use the pure haskell glob library instead)
* annex.diskreserve checking (missing sys/statvfs.h)
* timestamp preservation support (yawn)
* S3
* WebDAV
* XMPP

The resulting 17mb binary has been tested on Android, and it is able to,
at least, print its usage message.
2013-02-10 15:48:38 -04:00
Joey Hess
14939362cb use hothasktags 2013-01-30 14:09:46 +11:00
Joey Hess
9e941f745d add ctags generation
I need to clean up the path to hasktags. Ideally by packaging it in Debian.

Not using ghci's own tags generation because it falls over on pre-compiled
files.
2013-01-29 22:35:10 +11:00
Joey Hess
d3d791c7e7 addurl --fast: Use curl, rather than haskell HTTP library, to support https. 2013-01-27 09:30:53 +11:00
Joey Hess
8b4f601626 trim the pages built 2013-01-07 12:56:20 -04:00
Joey Hess
7af958d92c OSX FSEvents support
Needs work to deal with directory renames better; otherwise seems to
basically work.
2012-12-27 15:22:29 -04:00
Joey Hess
82617b92e9 move thirdparty program installation for standalone bundle into haskell program
This allows it to use Build.SysConfig to always install the programs
configure detected. Amoung other fixes, this ensures the right uuid
generator and checksum programs are installed.

I also cleaned up the handling of lsof's path; configure now checks for
it in PATH, but falls back to looking for it in sbin directories.
2012-12-14 16:07:59 -04:00
Joey Hess
7a08220ee9 typo 2012-12-13 15:48:32 -04:00
Joey Hess
dd032bd84c furnish git with an (empty) template directory in standalone builds
This will stop git-init complaining about missing template directory.
2012-12-13 12:27:32 -04:00
Joey Hess
0fdfab366e put sbin directories in PATH when building standalone so lsof is found
This ensures that the standalone builds will include lsof, and it'll then
be in the runshell PATH, so will work.

This does not deal with manual builds where lsof is not in path, which
will fail at runtime due to the program being missing.
2012-12-12 12:02:54 -04:00
Joey Hess
08af051238 remove set -e
Not sure why this is failing w/o an error message.
2012-12-11 14:07:06 -04:00
Joey Hess
644f8bfbb9 switch back to WITH_DNS
This is because host is not included in the standalone builds.
2012-12-11 12:14:48 -04:00
Joey Hess
941bd635d2 require all THIRDPARTY_BINS be present to build standalone/app
It's just not acceptable for eg, lsof to be left out.
2012-12-10 15:22:02 -04:00
Joey Hess
033577b661 Enable WebDAV support in Debian package. Closes: #695532 2012-12-10 11:12:55 -04:00
Joey Hess
3ecf3b1a9f run bzip2 in fast mode 2012-12-09 13:43:18 -04:00
Joey Hess
457d34696f better message 2012-12-08 15:54:46 -04:00
Joey Hess
1dd386903b use install_name_tool to adjust library paths in osx app
Have not yet been able to test this.
2012-12-08 11:07:59 -04:00
Joey Hess
48b17bd8ec include /bin/sh in standalone builds
oberon:MacOS joeyh$ ./runshell
dyld: Symbol not found: _environ
  Referenced from: /bin/sh
  Expected in: /Volumes/git-annex/git-annex.app/Contents/MacOS/usr/lib/libSystem.B.dylib
 in /bin/sh
2012-12-07 14:43:48 -04:00
Joey Hess
dc337e29de Include ssh in standalone builds.
There are two reasons to to so. First, it allows not building with
WITH_OLD_SSH, and using ssh connection caching.

Second, per
http://git-annex.branchable.com/bugs/OSX_app_issues/#comment-3bdbc400a7c87c5cbc16e5aab5a52ac3
ssh can fail when run from the standalone build, due to library
incompatabilities. Building in ssh will avoid this.
2012-11-29 15:51:21 -04:00
Joey Hess
4f9cb2041c rewrote OSX library copier in Haskell, now with recursive copying of library deps 2012-11-26 14:09:40 -04:00
Joey Hess
0cba0cb2dd skeltal webdav special remote
Doesn't actually store anything yet, but initremote works and tests the
server.
2012-11-14 20:25:31 -04:00
Joey Hess
0e84de938e add clibs to getflags 2012-11-06 15:57:01 -04:00
Joey Hess
bdeea572b6 add cp to THIRDPARTY_BINS
git-annex is built with various cp options, so cp needs to match the build
environment.
2012-11-04 15:55:01 -04:00
Joey Hess
359f386ad6 switch to new URI version by default, -DWITH_OLD_URI for old 2012-11-03 12:10:01 -04:00
Joey Hess
9173c66e40 support using haskell-dns for SRV lookups
This library should be easier to install than ADNS, so I've made it
be used by default.
2012-10-28 19:14:30 -04:00
Joey Hess
19ff559590 add host command to standalone builds 2012-10-27 20:52:39 -04:00
Joey Hess
52a48d1a78 Merge branch 'master' into xmpp 2012-10-25 14:43:55 -04:00
Joey Hess
b846a69451 Re-enable dbus, using a new version of the library that fixes the memory leak.
For now, when dbus goes away, the assistant keeps running but does not fall
back or reconnect. To do so needs more changes to the DBus library; in
particular a connectSessionWith and connectSystemWith to let me specify
my own clientThreadRunner.
2012-10-25 14:32:30 -04:00
Joey Hess
21c27fed21 also remove -ignore-package monads-fd
My previous change should mean I no longer need that hack.
2012-10-24 14:46:31 -04:00
Joey Hess
9856641ef1 deal with mtl/monads-tf conflict
I had been using -ignore-package monads-tf to deal with this, but
the XMPP library uses monads-tf, so that also ignores it. Instead,
use PackageImports to force use of mtl in my own code.
2012-10-24 14:43:32 -04:00
Joey Hess
2c788a28a1 added network-protocol-xmpp and -DWITH_XMPP 2012-10-23 20:24:23 -04:00
Joey Hess
ea5f0fca97 workaround for ghci fragility in reusing objects compiled with ghc 2012-10-20 16:20:42 -04:00