Changeset 64ca438 in report


Ignore:
Timestamp:
Jun 30, 2010 3:10:24 PM (8 years ago)
Author:
Simon Marlow <marlowsd@…>
Branches:
h2010, master
Children:
a157b23
Parents:
5565091
Message:

update READMEs

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • README

    r5565091 r64ca438  
    1 Notes on building the report
    2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     1Haskell Report README
     2~~~~~~~~~~~~~~~~~~~~~
    33
    4 Tools needed:
    5      
    6       * flex
    7       * GHC
    8       * TeX (install "tetex" on a Linux distribution to get everything
    9         you need).
     4These are the sources to the Haskell report, including all the source
     5files you will need to generate either the PDF or the HTML version of
     6the report.
     7
     8
     9Tools you will need
     10~~~~~~~~~~~~~~~~~~~
     11
     12PDF version: a decent LaTeX installation with pdflatex.  We use the
     13following additional packages:
     14
     15  - times
     16  - makeidx
     17  - graphicx
     18  - url
     19  - color
     20  - hyperref
     21
     22Also you need the following tools
     23
     24  - makeindex
     25
     26all of which are usually available with a good TeX distribution
     27(e.g. TeX Live).
     28
     29The following are also required for building the tools:
     30
     31  - flex
     32  - GHC
     33
     34The HTML version additionall requires
     35
     36  - tex4ht (e.g. install 'tex4ht' on a Debian or Ubuntu system, or
     37            'tetex-tex4ht' on a Fedora system)
     38
     39Building the report
     40~~~~~~~~~~~~~~~~~~~
    1041
    1142Firstly:
     
    2051        $ make
    2152
    22 to build the PS (haskell.ps) and HTML (in haskell-report-html)
    23 versions.  To get PDF, use ps2pdf on the PS version.
     53This will create:
    2454
    25 When you check in a patch to the darcs repo, darcs will automatically
    26 try to re-build the tools and report.  If it fails for any reason, then
    27 your patch will be rejected.  (This is controlled by the top-level
    28 Makefile target 'default', and the darcs preferences.)  If you think
    29 your patch is fine, but the build system is broken, then you might need
    30 to login to darcs.haskell.org and do some fixing by hand.
    31 
    32 [
    33   There are various other Makefile rules; for example 'make release' at
    34   the top level was supposed to build a complete release of the "Revised
    35   Haskell 98 Report", although it doesn't work out of the box.  For
    36   Haskell', we'll want to modify these Makefiles to do what we want in
    37   due course.
    38 ]
     55   - PDF version: report/haskell.pdf
     56   
     57   - HTML version: report/ht/haskell.html
     58     (NB. requires report/ht/*.{html,png,css})
    3959
    4060
     
    4767                        in a single document)
    4868   
    49     libraries/          OUT OF DATE (from Dec 2002): ignore this directory
    50    
    5169    tools/              Tools needed to build the Reports
    5270                        (cd into here and type make)
     
    5472    Makefile            Build a distribution of the Reports
    5573
    56     report/haskell-prime-draft.html     A summary page to glue all the outputs together
    5774
    58     report/h98.gif      A GIF for a Haskell 98 logo
    59     report/hprime.png   A PNG for a Haskell Prime logo
     75.verb files
     76~~~~~~~~~~~
    6077
    6178
    62 OUTPUT FILES
    63     haskell-prime-draft/        A directory containing the distribution
    64     haskell-report-html/        A directory containing the HTML
    65 
    66 
  • report/README

    r5565091 r64ca438  
     1Haskell Report Sources
     2~~~~~~~~~~~~~~~~~~~~~~
    13
    2 This is the Haskell 2010 report, source distribution. 
     4.verb files
     5~~~~~~~~~~~
    36
    4 This has all files needed to generate either the postscript or the
    5 html version of the Haskell report.  Some of these files are generated
    6 from others - these are marked with a (*) and are included in case the
    7 tool used to generate the file is unavailable.
     7.verb files are converted to .tex by the preprocessor "verbatim" in
     8../tools.  When generating HTML via tex4ht, we use a slightly
     9different version of the preprocesor, in ../tools/verb-tex4ht.
    810
    9 To generate the postscript report you need lex, perl, latex,
    10 makeindex, and dvips.
    1111
    12 To generate the html report you need Hugs 1.4 (probably any Haskell
    13 1.4 compiler will do).
     12make targets
     13~~~~~~~~~~~~
    1414
    15 To change the date on the report, you must change:
    16         * haskell.verb (line 429-ish)
    17         * index.html (line 8-ish)
    18         * html.config (~foot item)
    19        
     15   all       make both HTML and PDF versions
     16   html      make the HTML version
     17   pdf       make the PDF version
     18   clean     remove generated files
     19   haddock   re-generate the library documentation using Haddock
     20             (see Makefile for instructions)
    2021
    21 Source files for the report:
    22 plain-haskell.verb  -- Top level of the report
     22Roadmap
     23~~~~~~~
     24
     25haskell.verb  -- Top level of the report
    2326
    2427Sections of the report:
     
    3033basic.verb
    3134io-13.verb
     35ffi.verb
    3236standard-prelude.verb
    3337syntax-iso.verb
    34 literate.verb
     38fixity.verb
    3539derived.verb
    3640pragmas.verb
    3741haskell.bib
    3842
     43Library documentation, generated by Haddock:
     44
     45libs/*.verb       -- documentation for each library module
     46haddck.sty        -- definitions for macros used by Haddock
     47
    3948Extra .verb files:
    4049iso-chars.verb    -- Some bogus definitions for ISO chars.  Probably not
    4150                  -- needed since I removed them from the syntax.
    42 layout.verb       -- a section on layout repeated in the appendix
    4351index-extra.verb  -- extra stuff to get indexed (see also's)
    4452index-intro.verb  -- header for index
     
    6169Html support:
    6270
    63 html.config        -- configuration file for tex.hs.
    64 haskell.aux (*)    -- The aux file generated by latex; used by html translator
    65 haskell.bbl (*)    -- used by html translator.  Hand edited to add
    66                    -- html headers at front.
    67 prelude-index.idx  -- Html file containing index of prelude.  #'s are
    68                    -- expanded by index.hs
    69 index.html         -- Top level of the html report (hand generated)
    70 lambda.gif         -- background for title page
    71 title.gif          -- title graphic
     71ht/haskell.cfg     -- tex4ht configuration file
     72ht/haddock.sty     -- customised Haddock style for HTML output
     73
     74index.html         -- (unused now) Top level of the html report (hand generated)
     75lambda.gif         -- (unused now) background for title page
    7276
    7377Other files:
    7478
    7579Makefile         -- Lots of extra cruft no longer used.
    76 haskell.dvi (*)  -- in case you just want to run dvips
    77 haskell.ind (*)  -- is case you don't have makeindex
    78 haskell.idx (*)  -- makes building easier
    7980
    80 
    81 To build the .dvi you need to patch the makefile to call the proper
    82 version of perl.  You will have some `non-grokked' instances in the
    83 perl.  Remember that you have to run latex twice.  If anyone converts
    84 the perl program to perl5 please send it to us!
    85 
    86 Report any problems to peterson-john@cs.yale.edu
    87 
    88 
    89 Building HTML files
    90 ~~~~~~~~~~~~~~~~~~~
    91 Build the html by creating a `html' subdirectory, copy the .html and
    92 .gif files to it, and run tex.hs twice (like tex - to get forward refs
    93 right).  Run index.hs to generate the function index.  You're done.
    94 The 'make html' does most of this.
    95 
    96 There are three files you need to work on:
    97 
    98         report/html.config
    99 
    100 Edit the title in the headers and footers.
    101 You can hack in whatever html you want for page headers and
    102 footers .  You can also hack on the output directory setting (htmldir)
    103 to direct the output wherever you want.  You'll have to fiddle
    104 "index.hs" if you do this, though.  You can also add the line
    105 
    106         style = microsoftsymbols,article
    107 
    108 This exploits the symbol font that microsoft uses in its browser.
    109 Much nicer for some of the equations.  Probably a good idea since most
    110 browsers handle the symbol font OK nowadays.
    111 
    112         report/prelude-index.idx
    113 
    114 You will need to edit this a little bit; probably just a few renamings
    115 and deleting stuff that lives in the libraries now.  Add a few more
    116 examples if you're feeling energetic.
    117 
    118 As to the building process:
    119 
    120 To build the html report: (using the .aux file and all the .verb files)
    121 
    122 cd <report directory>
    123 runhugs tex.hs
    124 runhugs tex.hs
    125 runhugs index.hs
    126 
    127 Like latex, you have to run tex.hs twice.  Unless you make massive
    128 changes, though, you can probably just do it once.  I'm sure ghc will
    129 compile tex.hs if you want to speed things up.
    130 
     81Report any problems to the most recent editor, or failing that, one of
     82the past editors of the report.
    13183
    13284
Note: See TracChangeset for help on using the changeset viewer.