summaryrefslogtreecommitdiff
path: root/ghc.mk
diff options
context:
space:
mode:
authorBen Gamari <bgamari.foss@gmail.com>2017-07-20 21:39:27 -0400
committerBen Gamari <ben@smart-cactus.org>2017-07-20 21:39:28 -0400
commitfefcbfa86b73517d5002366d0703ce694c6d228d (patch)
tree7568e192c33d896793fd8c58cfb83927c0d22a78 /ghc.mk
parent36e8bcba08446dbc4e7532ef9db5517c13977bf9 (diff)
downloadhaskell-fefcbfa86b73517d5002366d0703ce694c6d228d.tar.gz
build system: Ensure there are no duplicate files in bindist list
Several executables inexplicably appear twice in bindist.list, which ends up producing multiple tar file entries, consequently breaking BSD tar during extraction. I spent a fair amount of time trying to work out where these duplicates were coming from to no avail. Since Hadrian is right around the corner I'm satisfied with a terrible hack: just uniq bindist.list before producing the bindist tarball. Test Plan: Validate Reviewers: austin Subscribers: rwbarton, thomie GHC Trac Issues: #13979, #13974 Differential Revision: https://phabricator.haskell.org/D3767
Diffstat (limited to 'ghc.mk')
-rw-r--r--ghc.mk4
1 files changed, 3 insertions, 1 deletions
diff --git a/ghc.mk b/ghc.mk
index cdab331486..4eb1658174 100644
--- a/ghc.mk
+++ b/ghc.mk
@@ -1125,7 +1125,8 @@ unix-binary-dist-prep:
$(call removeFiles,$(BIN_DIST_PREP_TAR))
# h means "follow symlinks", e.g. if aclocal.m4 is a symlink to a source
# tree then we want to include the real file, not a symlink to it
- cd bindistprep && "$(TAR_CMD)" hcf - -T ../bindist-list | $(TAR_COMP_CMD) -c > ../$(BIN_DIST_PREP_TAR_COMP)
+ sort bindist-list | uniq > bindist-list.uniq
+ cd bindistprep && "$(TAR_CMD)" hcf - -T ../bindist-list.uniq | $(TAR_COMP_CMD) -c > ../$(BIN_DIST_PREP_TAR_COMP)
windows-binary-dist-prep:
$(call removeTrees,bindistprep/)
@@ -1436,6 +1437,7 @@ distclean : clean
# We make these when making or testing bindists
$(call removeFiles,bindist-list)
+ $(call removeFiles,bindist-list.uniq)
$(call removeTrees,bindisttest/a)
# Not sure why this is being cleaned here.