Build system: ./boot && ./configure && make sdist (#8723)
ClosedPublic

Authored by thomie on May 28 2015, 6:41 AM.

Details

Summary

Make it possible to run make sdist right after configure, without completing
a complete build first.

Test Plan

I compared the contents of the created .tar.bz2 files in the sdistprep
directory, after running make sdist both before and after completing a full
build, using diff -r. There weren't any differences (after applying the
patches from D914).

Note that the .tar.bz2 files were not exactly the same size, but they aren't
either when tarring and bzipping the same directory twice. It seems tarring
and bzipping is not deterministic (on my system).

Depends on: D914

Diff Detail

Repository
rGHC Glasgow Haskell Compiler
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
thomie updated this revision to Diff 3018.May 28 2015, 6:41 AM
thomie retitled this revision from to Build system: ./boot && ./configure && make sdist (#8723).
thomie updated this object.
thomie edited the test plan for this revision. (Show Details)
thomie added reviewers: nomeata, hvr, austin.
thomie updated the Trac tickets for this revision.May 28 2015, 6:53 AM
hvr edited edge metadata.May 28 2015, 8:51 AM

Looks interesting, have you tested that make sdist-ghc still works? As that's the tarball most important for nightly buildjobs...

Makefile
64–86

Is sdist% (which looks a bit odd) supposed to end up in MAKECMDGOALS in the first place?

Yes, make sdist-ghc works as well.

It takes 30 seconds on my laptop, most of which is spend on running happy over Parser.y and tar/bzipping.

Makefile
64–86

% in make is similar to * in the shell.

So this also filters out targets sdist-ghc, sdist-windows-tarballs and sdist-testsuite.

hvr added inline comments.May 28 2015, 9:41 AM
Makefile
64–86

I see... but then why not sdist-% which would avoid matching some potentially unrelated sdist[a-z]* ? :)

thomie updated this revision to Diff 3029.May 28 2015, 2:14 PM
thomie edited edge metadata.

Explicit is better than implicit: don't use sdist%.

And make sure make sdist-ghc-prep works again, which does the same as `make
sdist-ghc` but skips the tar/bzip2 step.

nomeata resigned from this revision.May 29 2015, 3:40 PM
nomeata removed a reviewer: nomeata.
austin accepted this revision.Jun 1 2015, 1:41 AM
austin edited edge metadata.

Nice, LGTM.

This revision is now accepted and ready to land.Jun 1 2015, 1:41 AM
thomie updated this revision to Diff 3096.Jun 3 2015, 3:25 AM
thomie marked 3 inline comments as done.
thomie edited edge metadata.

Rename sdist-file to sdist-ghc-file. Format huge list of targets a bit.

This revision was automatically updated to reflect the committed changes.