git-annex/doc/bugs/Add_custom-setup_stanza_to_.cabal_file.mdwn
Joey Hess 25703e1413
finally really add back custom-setup stanza
Fourth or fifth try at this and finally found a way to make it work.

Absurd amount of busy-work forced on me by change in cabal's behavior.
Split up Utility modules that need posix stuff out of ones used by
Setup. Various other hacks around inability for Setup to use anything
that ifdefs a use of unix.

Probably lost a full day of my life to this.
This is how build systems make their users hate them. Just saying.
2017-12-31 16:36:39 -04:00

49 lines
2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### Please describe the problem.
git-annex uses a custom setup script but does not have a custom-setup stanza. This causes
git-annex to be unbuildable with `cabal new-build` and I'm told it's also unbuildable with
the old `cabal build` under certain circumstances.
### What steps will reproduce the problem?
Try building git-annex with `cabal new-build`.
### What version of git-annex are you using? On what operating system?
git-annex-6.20171214 on Debian GNU/Linux 9.
### Please provide any additional information below.
[[!format sh """
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
$ cabal new-build --constraint="any.git-annex -testsuite"
Resolving dependencies...
In order, the following will be built (use -v for more details):
- git-annex-6.20171214 (exe:git-annex) -testsuite -dbus -concurrentoutput (requires build)
- dummypkg-0 (lib) (first run)
Configuring git-annex-6.20171214 (all, legacy fallback)...
cabal: Failed to build git-annex-6.20171214 (which is required by dummypkg-0).
The failure occurred during the configure step. The exception was:
dieVerbatim: user error (cabal: '/usr/bin/ghc' exited with an error:
/home/matthew/dummypkg/dist-newstyle/tmp/src-3285/git-annex-6.20171214/Utility/FileSize.hs:10:1:
error:
Failed to load interface for System.PosixCompat.Files
It is a member of the hidden package unix-compat-0.5.0.1.
Perhaps you need to add unix-compat to the build-depends in your .cabal
file.
Use -v to see a list of the files searched for.
)
# End of transcript or log.
"""]]
### Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders)
Yeah, it's amazing! I've been using the version from the Debian repos and then
wanted to try building the new version for youtube-dl support.
> Revisited it and seem to have managed to add custom-setup back. [[done]]
> --[[Joey]]