Page MenuHomeFreeBSD

Various cleanups for GHC ports.
ClosedPublic

Authored by arrowd on Nov 29 2018, 11:08 AM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Nov 25, 4:51 AM
Unknown Object (File)
Sun, Nov 24, 2:50 AM
Unknown Object (File)
Sat, Nov 23, 12:11 PM
Unknown Object (File)
Sat, Nov 23, 6:53 AM
Unknown Object (File)
Fri, Nov 22, 7:25 AM
Unknown Object (File)
Thu, Nov 21, 2:37 AM
Unknown Object (File)
Wed, Nov 20, 6:17 PM
Unknown Object (File)
Wed, Nov 20, 10:01 AM
Subscribers
None

Details

Summary
  • Switch to using ld instead of binutils ld or ld.bfd on amd64/i386.
  • Add GMP option.
  • Fix create-bootstrap target to produce tarballs ready to be consumed by ports.
  • Update bootstrap compilers to 8.4.3 on amd64/i386.
  • Get rid merge build.boot.mk.in into build.mk.in.
  • Sort some Makefile variables.
Test Plan

poudriere testport -j {rel11, rel11x86, cur13, rel12x86} -I lang/{ghc,ghc843}. For each build enter the jail and compiled simple hello world Haskell program.

Diff Detail

Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 21259
Build 20600: arc lint + arc unit

Event Timeline

Do I need to regenerate the bootstrap for arm?

In D18378#391260, @mikael.urankar_gmail.com wrote:

Do I need to regenerate the bootstrap for arm?

Yes, it would be great if you do that. It can now be achieved with just make -C lang/ghc843 build create-bootstrap. Also, set all options (DOCS, DYNAMIC, GMP and PROFILE) to OFF when building bootstraps to save space and build time.

Moin moin -- the patch does not apply for me.

  • Add INTEGER_LIBRARY = %%INTEGER_LIBRARY%% to build.mk template.
This revision is now accepted and ready to land.Dec 1 2018, 12:50 PM
mikael added inline comments.
lang/ghc/bsd.ghc.mk
39–42

This issue is fixed with 8.4.3 on aarch64 and armv6/7

278

Can we use ${WRKSRC}/ghc-${GHC_VERSION}-${CONFIGURE_TARGET:S/${OSREL}//}.tar.xz instead? I used the llvm triple and not the 'portbld' thing on arm :/

lang/ghc/distinfo
10–11

http://mikael.urankar.free.fr/FreeBSD/aarch64/ghc-8.4.3-boot-aarch64-freebsd.tar.xz
SHA256 (ghc-8.4.3-boot-aarch64-freebsd.tar.xz) = 84611f37d31a43a3216274ee7dcee4b89f2c5ef6ab713222f266b5658c736e05
SIZE (ghc-8.4.3-boot-aarch64-freebsd.tar.xz) = 99933576

arrowd added inline comments.
lang/ghc/bsd.ghc.mk
278

I used the llvm triple

What does that mean? You didn't use the port to build the bootstrap?

  • Use 8.4.3 bootstrap for aarch64.
  • Move ONLY_FOR_ARCHS to bsd.ghc.mk.
This revision now requires review to proceed.Dec 5 2018, 8:00 PM
  • Enable DYNAMIC option on arm arches.
  • Use 8.4.2 bootstrap on armv{6,7}.

Still looks good to me.

This revision is now accepted and ready to land.Dec 6 2018, 7:52 PM
This revision was automatically updated to reflect the committed changes.