haddock issue building ghc-7.8 from git

Austin Seipp austin at well-typed.com
Fri Mar 14 10:08:35 UTC 2014


My goodness am I clumsy sometimes :(

It's actually:

$ git clone -b ghc-7.8 https://git.haskell.org/ghc ghc-7.8
$ cd ghc-7.8
$ ./sync-all get -b ghc-7.8

I messed up the -b argument. Again. :(

As a rule, sync-all for 'get' will take 'git' arguments, so the 'get
-b' translates to 'git clone -b ghc-7.8 ...'

Also, yes, there are already fingerprints. See the source code here:
https://github.com/nomeata/ghc-complete/tree/ghc-7.8 - Note
specifically it is on the 7.8 branch. Also see:

https://ghc.haskell.org/trac/ghc/wiki/Building/GettingTheSources#Trackingthefullrepositorystate

to use the fingerprint utility.

Urgh. Sorry again!

On Fri, Mar 14, 2014 at 5:03 AM, Matthias Fischmann <mf at zerobuzz.net> wrote:
>
> On Fri, Mar 14, 2014 at 04:45:58AM -0500, Austin Seipp wrote:
>> Date: Fri, 14 Mar 2014 04:45:58 -0500
>> From: Austin Seipp <austin at well-typed.com>
>> To: "ghc-devs at haskell.org" <ghc-devs at haskell.org>
>> Subject: Re: haddock issue building ghc-7.8 from git
>>
>> Oh bother:
>>
>> > $ ./sync-all -b ghc-7.8
>>
>> Should be:
>>
>> ./sync-all -b ghc-7.8 get
>>
>> of course.
>
> ok, that makes a lot of sense.  (i was wondering about demanding version 709... :-)
>
> now i get this:
>
> [...]
> ~/src/ghc-7.8$ ./sync-all -b ghc-7.8 get
> Unrecognised flag: -b at ./sync-all line 850.
> == Checking for old haddock repo
> == Checking for old binary repo
> == Checking for old mtl repo
> == Checking for old Cabal repo
> == Checking for old time from tarball
> ============================
> ATTENTION!
>
> You have an old time package in your GHC tree!
>
> Please remove it (e.g. "rm -r libraries/time"), and then run
> "./sync-all get" to get the new repository.
> ============================
> == Checking for obsolete Git repo URL
> ~/src/ghc-7.8$ rm -rf libraries/time/
> ~/src/ghc-7.8$ ./sync-all -b ghc-7.8 get
> Unrecognised flag: -b at ./sync-all line 850.
> == Checking for old haddock repo
> == Checking for old binary repo
> == Checking for old mtl repo
> == Checking for old Cabal repo
> == Checking for old time from tarball
> == Checking for obsolete Git repo URL
> ~/src/ghc-7.8$ perl boot
> Error: libffi-tarballs/LICENSE doesn't exist.
> [...]
>
> i also tried to pull with -b ghc-7.8, but sync-all doesn't do anything
> in either case.
>
> ./sync-all get pull master (which i don't want, appearently).
>
> './sync-all checkout ghc-7.8' cannot find branch 7.8 on several repos.
>
> (how easy would it be to implement exact version pinning in sync-all?
> could i do it in a day or two?  would there be any drawbacks from
> doing this?)
>
> cheers,
> matthias
>
>
>
>> On Fri, Mar 14, 2014 at 4:45 AM, Austin Seipp <austin at well-typed.com> wrote:
>> > You need to say:
>> >
>> > $ git clone -b ghc-7.8 https://git.haskell.org/ghc ghc-7.8
>> > $ cd ghc-7.8
>> > $ ./sync-all -b ghc-7.8
>> >
>> > That should do the trick and get you a clean, working repository
>> > (sync-all is fiddly with checkout at the moment, if I remember
>> > correctly).
>> >
>> > On Fri, Mar 14, 2014 at 4:29 AM, Mateusz Kowalczyk
>> > <fuuzetsu at fuuzetsu.co.uk> wrote:
>> >> On 14/03/14 09:01, Matthias Fischmann wrote:
>> >>>
>> >>> Hi,
>> >>>
>> >>> When building from git (branch ghc-7.8 as of today), I run into a
>> >>> haddock issue because __GLASGOW_HASKELL__ appearently is not 709 on my
>> >>> system.  Not sure whether this is a bug, and if it should go to
>> >>> trac/haddock or trac/ghc, so I decided to post it here.
>> >>>
>> >>> My "fix" is easy enough (even though I ran into other problems later,
>> >>> so I don't really know how well it works):
>> >>>
>> >>> | ~/src/ghc/utils/haddock/src/Haddock$ git diff
>> >>> | diff --git a/src/Haddock/InterfaceFile.hs b/src/Haddock/InterfaceFile.hs
>> >>> | index 924829d..19a742f 100644
>> >>> | --- a/src/Haddock/InterfaceFile.hs
>> >>> | +++ b/src/Haddock/InterfaceFile.hs
>> >>> | @@ -76,14 +76,14 @@ binaryInterfaceMagic = 0xD0Cface
>> >>> |  -- (2) set `binaryInterfaceVersionCompatibility` to [binaryInterfaceVersion]
>> >>> |  --
>> >>> |  binaryInterfaceVersion :: Word16
>> >>> | -#if __GLASGOW_HASKELL__ == 709
>> >>> | +-- #if __GLASGOW_HASKELL__ == 709
>> >>> |  binaryInterfaceVersion = 25
>> >>> |
>> >>> |  binaryInterfaceVersionCompatibility :: [Word16]
>> >>> |  binaryInterfaceVersionCompatibility = [binaryInterfaceVersion]
>> >>> | -#else
>> >>> | -#error Unsupported GHC version
>> >>> | -#endif
>> >>> | +-- #else
>> >>> | +-- #error Unsupported GHC version
>> >>> | +-- #endif
>> >>> |
>> >>> |
>> >>> |  initBinMemSize :: Int
>> >>>
>> >>> thanks,
>> >>> matthias
>> >>> _______________________________________________
>> >>> ghc-devs mailing list
>> >>> ghc-devs at haskell.org
>> >>> http://www.haskell.org/mailman/listinfo/ghc-devs
>> >>>
>> >>
>> >> The master branch of Haddock has that test for a reason: anyone working
>> >> on Haddock will be doing so using GHC HEAD which is at 7.9. Haddock has
>> >> a separate branch (named ghc-7.8) which is the candidate that will go
>> >> into 7.8.
>> >>
>> >> If you're building GHC 7.8, you should be on that branch for Haddock and
>> >> all the other libraries. IIRC you can pass some arguments to the
>> >> sync-all script which will do all the switching for you but I forgot
>> >> what it was. I'm sure someone else can chime in.
>> >>
>> >> --
>> >> Mateusz K.
>> >> _______________________________________________
>> >> ghc-devs mailing list
>> >> ghc-devs at haskell.org
>> >> http://www.haskell.org/mailman/listinfo/ghc-devs
>> >>
>> >
>> >
>> >
>> > --
>> > Regards,
>> >
>> > Austin Seipp, Haskell Consultant
>> > Well-Typed LLP, http://www.well-typed.com/
>>
>>
>>
>> --
>> Regards,
>>
>> Austin Seipp, Haskell Consultant
>> Well-Typed LLP, http://www.well-typed.com/
>> _______________________________________________
>> ghc-devs mailing list
>> ghc-devs at haskell.org
>> http://www.haskell.org/mailman/listinfo/ghc-devs
>



-- 
Regards,

Austin Seipp, Haskell Consultant
Well-Typed LLP, http://www.well-typed.com/


More information about the ghc-devs mailing list