This directory contains scripts for building Hugs distributions.

To build all distributions, perform the following commands
on appropriate machines (NT workstation and Solaris machine)

If (you've changed any aspect of configuration, Makefiles, parser, docs)
then

    Sun: update configuration masters, rebuild documentation

      cd ~/hugs/src/unix
      ./mkconfig
      cvs commit

      cd ~/X
      cvs -d :pserver:reid@solander.dcs.gla.ac.uk:/local/fp/src/cvsroot checkout fptools/ghc/docs/libraries
      cd fptools/ghc/docs/libraries
      sgml2html libs.sgml
      sgml2latex -p libs.sgml   # postscript
      sgml2latex -d libs.sgml   # dvi

    NT:  build precooked distributions

      cd hugs/src/unix
      <update HUGS_VERSION in ../options.h.in
      mkconfigs 
      <update ../{djgpp2,mac}/{Makefile,options.h,config.h} by hand>
      <update date on hugs/README>
      cvs commit

    NT:  make sure parser.c is portable

      cd hugs/src
      biggy parser.y
      <replace CR-LF with LF - why doesn't CVS do this for us?>
      cvs commit parser.c

    NT:  update hugs/docs/README

      While viewing index.html with Netscape (IE doesn't work so well),
      copy the page, paste it into hugs/docs/README and adjust
      formatting of first paragraph.
      cvs commit index.html README

    NT: update hugsdocs

      cd ~/hugsdocs
      cvs update
      make win32

    NT: update Greencard

      cd ~/fptools/green-card
      cvs update
      cd src
      ~/hugs/runhugs ~/happy-1.4/src/Main.lhs Parse.ly
      ~/hugs/runhugs -h1m ~/lx-1.4/src/Lx.hs Lex.lx

    NT: update fptools/hslibs/Win32

      cd ~/fptools/hslibs/win32/src
      cvs update
      make -f hugs.mk

Fi


NT:  build docs + binary files

  <cvs update>
  hugs/src/distrib/mkwin32
  cp win32.tar //f/X  # or wherever you're assembling things on Haskell

Sun: build source/binary tars/zips 

  bash hugs/src/distrib/mkdistribs
  # There's a --fast option for use when tweaking the distribution
  # script which assumes you just ran this script a moment ago.
  # Don't use this option for building a real distribution!

  # To test whether hugs16.zip is ok, unzip it and rezip using -k flag.
  # Results might be a little overcautious.

NT:  build installshield

  # map \\haskell\hcompile to x: drive
  cp //f/X/build/hugs_ishield.zip   .
  cp //f/X/build/ishield_files      .
  hugs/src/distrib/mkishield hugs_ishield.zip ishield_files
  # End of batch mode script
  # restart installshield 5 
  # select hugs_haskell_system
  # Build:Compile  - don't skip this step or you'll have the wrong version no
  # Build:Media Build Wizard
  #   Accept defaults but fix the version info
  # Build:Send Media To...
  #   Enter some random filename

  cp c:/foo/hugsis.zip //f/X/build
  cp c:/foo/hugsis.exe //f/X/build

Sun: put (a subset of the above) into BETA directory on ftp site

  hugs/src/distrib/mkFTP Jan98
