MSYS2 package for GHC 7.10.1

Yitzchak Gale gale at sefer.org
Fri May 22 13:58:00 UTC 2015


Wow, this sounds great!

Just to clarify - this would still be a mingw-w64 build
and not require the msys2 DLLs, correct?

Thanks,
Yitz
On May 21, 2015 23:53, "David Macek" <david.macek.0 at gmail.com> wrote:

> With the helpful pointers from ezyang on IRC, I pushed this a bit forward.
>
> I converted most of the patches into more reasonable commits including
> short descriptions and created a git branch for it. See <
> https://github.com/ghc/ghc/compare/ghc-7.10.1-release...elieux:msys2-pkgbuild
> >.
>
> As mentioned previously, the changes should be uncontroversial except for
> two big changes: removing bundled mingw, perl and touchy and changing the
> directory layout. While the directory layout change is mostly
> self-contained (barring any tools hardcoding ..\lib), the bundled
> dependency removal will required major changes to the build process. My
> proposals follow.
>
> For hacking on GHC
> ==================
>
> 1. Get MSYS2, update and install dependencies (including the bootstrapping
> ghc that would come as a MSYS2 package)
> 2. Get a GHC repository ready
> 3. Hack, hack, hack
> 4. Build and test as usual
> 5. GOTO 3
>
> Alternatively, this could be replaced with a makepkg-based flow:
>
> 1. Get MSYS2, update and install dependencies (including the bootstrapping
> ghc that would come as a MSYS2 package)
> 2. Get a mingw-w64-ghc-git PKGBUILD
> 3. $ makepkg-mingw --nobuild # clone the repositories
> 4. Go to src/ghc and hack, hack, hack
> 5. $ makepkg-mingw --noextract --noprepare --noarchive # build and test
> 6. GOTO 4
>
> For binary release
> ==================
>
> Phase 1: pacman package. This can be done in coordination with the MSYS2
> maintainers, or a separate GHC-owned pacman repository can be created.
>
> 1. Get MSYS2, update and install dependencies (including the bootstrapping
> ghc that would come as a MSYS2 package)
> 2. Update the mingw-w64-ghc PKGBUILD to point to the new source release
> 3. $ makepkg-mingw # build a package
> 4. Upload the package to a pacman repository
>
> Phase 2: stand-alone bindist
>
> 1. Download the package and its dependencies
> 2. Extract them into a temporary directory
> 3. Create a tarball or an installer from that
> 4. Upload to GHC servers
>
> This is essentially what the new Git for Windows does (and what some other
> projects that use MSYS2 as their build environment do).
>
> --
> David Macek
>
>
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20150522/b6480ad7/attachment.html>


More information about the ghc-devs mailing list