Page MenuHomeFreeBSD

Various cleanups for GHC ports.
ClosedPublic

Authored by arrowd on Thu, Nov 29, 11:08 AM.

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

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

arrowd created this revision.Thu, Nov 29, 11:08 AM
arrowd edited the test plan for this revision. (Show Details)Thu, Nov 29, 11:27 AM

Do I need to regenerate the bootstrap for arm?

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.

arrowd updated this revision to Diff 51456.Sat, Dec 1, 6:17 AM

Rebase on recent master.

arrowd updated this revision to Diff 51465.Sat, Dec 1, 11:47 AM
  • Add INTEGER_LIBRARY = %%INTEGER_LIBRARY%% to build.mk template.
tcberner accepted this revision.Sat, Dec 1, 12:50 PM

Looks good to me now.

This revision is now accepted and ready to land.Sat, Dec 1, 12:50 PM
mikael.urankar_gmail.com added inline comments.
lang/ghc/bsd.ghc.mk
39–42 ↗(On Diff #51465)

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

278 ↗(On Diff #51465)

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 ↗(On Diff #51465)

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 marked an inline comment as done.Wed, Dec 5, 6:41 PM
arrowd added inline comments.
lang/ghc/bsd.ghc.mk
278 ↗(On Diff #51465)
I used the llvm triple

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

arrowd updated this revision to Diff 51626.Wed, Dec 5, 8:00 PM
  • Use 8.4.3 bootstrap for aarch64.
  • Move ONLY_FOR_ARCHS to bsd.ghc.mk.
This revision now requires review to proceed.Wed, Dec 5, 8:00 PM
arrowd updated this revision to Diff 51627.Wed, Dec 5, 8:02 PM
  • Enable DYNAMIC option on arm arches.
arrowd updated this revision to Diff 51670.Thu, Dec 6, 5:53 PM
  • Use 8.4.2 bootstrap on armv{6,7}.
tcberner accepted this revision.Thu, Dec 6, 7:52 PM

Still looks good to me.

This revision is now accepted and ready to land.Thu, Dec 6, 7:52 PM
Closed by commit rP486824: Cleanup GHC ports: (authored by arrowd, committed by ). · Explain WhyFri, Dec 7, 5:49 AM
This revision was automatically updated to reflect the committed changes.