The previous hack to include Parser.hs in source distros broke the possibility
of doing a "make dist" in a fresh tree, i.e. one which has just been checked
out and configured, but *not* built. Of course you will need Happy for such a
source distro later, but at least the freedom to do this is important.
The ultimate goal should be that something like "make dist" will work in a
freshly checked out tree, with no prerequisite steps (this is very common in
most projects). We should move towards that goal, not away from it...
MERGE TO STABLE
&& for i in $(SRC_DIST_DIRS); do mkdir $$i; (cd $$i && lndir $(FPTOOLS_TOP_ABS)/$$i ); done \
&& for i in $(SRC_DIST_FILES); do $(LN_S) $(FPTOOLS_TOP_ABS)/$$i .; done \
&& $(MAKE) distclean \
- && $(CP) $(FPTOOLS_TOP_ABS)/libraries/haskell-src/dist/build/Language/Haskell/Parser.hs libraries/haskell-src/Language/Haskell/ \
+ && if test -f $(FPTOOLS_TOP_ABS)/libraries/haskell-src/dist/build/Language/Haskell/Parser.hs; then $(CP) $(FPTOOLS_TOP_ABS)/libraries/haskell-src/dist/build/Language/Haskell/Parser.hs libraries/haskell-src/Language/Haskell/ ; fi \
&& $(RM) -rf compiler/stage[123] mk/build.mk \
&& $(FIND) $(SRC_DIST_DIRS) \( -name _darcs -o -name SRC -o -name "autom4te*" -o -name "*~" -o -name ".cvsignore" -o -name "\#*" -o -name ".\#*" -o -name "log" -o -name "*-SAVE" -o -name "*.orig" -o -name "*.rej" \) -print | xargs $(RM) -rf \
)