--- frown-0.6.1.orig/debian/compat +++ frown-0.6.1/debian/compat @@ -0,0 +1 @@ +5 --- frown-0.6.1.orig/debian/copyright +++ frown-0.6.1/debian/copyright @@ -0,0 +1,33 @@ +This package was debianized by Arjan Oosting on +Wed, 2 Nov 2005 00:24:43 +0100. + +It was downloaded from http://www.informatik.uni-bonn.de/~ralf/frown/index.html + +Copyright (C) 2001-2005 Ralf Hinze + +Upstream Author: Ralf Hinze + +License: + + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License (version 2) as + published by the Free Software Foundation. + + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this package; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian systems, the complete text of the GNU General +Public License can be found in `/usr/share/common-licenses/GPL'. + +Debian packaging copyright: + + (C) 2005-2006 Arjan Oosting + + The Debian packaging may be redistributed and/or modified under the + same terms as frown itself. --- frown-0.6.1.orig/debian/changelog +++ frown-0.6.1/debian/changelog @@ -0,0 +1,82 @@ +frown (0.6.1-6) unstable; urgency=low + + * debian/control: + - Add XS-Vcs-Browser field. + - Change build dependencies to prefer to build against texlive instead + of tetex. + * debian/rules: enclose paths in double quotes because directories can + contain spaces. + + -- Arjan Oosting Fri, 13 Apr 2007 09:37:14 +0200 + +frown (0.6.1-5) unstable; urgency=low + + * Make frown Architecture: any as ghc6 is available on all architectures + now. + * Stop using update-haskell-control and $ghc6_* variables, as it is not + necessary and not using it simplifies the work for porters and for me. + + -- Arjan Oosting Sat, 13 Jan 2007 10:25:59 +0100 + +frown (0.6.1-4) unstable; urgency=low + + * First upload to Debian archive. (Closes: #336978). + * debian/control.in.in: + - change maintainer email address. + - rename XS-X-Vcs-Svn field to XS-Vcs-Svn + + -- Arjan Oosting Tue, 17 Oct 2006 04:01:36 +0200 + +frown (0.6.1-3) unstable; urgency=low + + * debian/control.in.in: + - ident Homepage field with two spaces. (Thanks James Westby). + - add ppc64 to the list of supported arches as ghc6 is available on + ppc64 as well. + - add XS-X-Vcs-Svn field pointing to subversion archive which contains + this package. + - document some of the differences with happy in the long description. + * debian/compat: switch to debhelper 5. + * debian/rules: switch from simple-patchsys to dpatch. + + -- Arjan Oosting Thu, 28 Sep 2006 01:53:20 +0200 + +frown (0.6.1-2) unstable; urgency=low + + * debian/control.in.in: bump Standards-Version to 3.7.2. No changes + needed. + * debian/copyright: add Debian packaging copyright. + * debian/frown.doc-base: added entry for PDF format. + * debian/frown.install: include the examples from the QuickStart, + Manual/Examples and Examples directories. + * debian/patches/04_manual-typos.patch: add missing backslashes before + LaTeX ldots command. + * debian/patches/05_only-build-pdf.patch: don't build and install the + manual in PS format. + * debian/rules: don't compress the pdf documentation. + + -- Arjan Oosting Wed, 17 May 2006 14:46:09 +0200 + +frown (0.6.1-1) unstable; urgency=low + + * New upstream release. + * debian/rules: + - rebuild manual during build. + - don't run tests during build yet. + * added patches: + - 01imagen-creates-png-files.patch: imagen generates png files + instead of gif files on a Debian system. + - 02ignore-hugs-version-in-test-frown.patch: ignore the version + header of Hugs in the output of the test cases. + - 03update-empty.out.patch: update the Empty example to match + the output given by the version of Hugs in unstable. + * debian/frown.doc-base: added doc-base support. + + -- Arjan Oosting Tue, 17 Jan 2006 22:29:35 +0100 + +frown (0.6-1) unstable; urgency=low + + * Initial release (Closes: #336978). + + -- Arjan Oosting Wed, 2 Nov 2005 00:24:43 +0100 + --- frown-0.6.1.orig/debian/watch +++ frown-0.6.1/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://www.informatik.uni-bonn.de/~ralf/frown/frown-([\d\.]*)\.tar\.gz debian svn-upgrade --- frown-0.6.1.orig/debian/frown.doc-base +++ frown-0.6.1/debian/frown.doc-base @@ -0,0 +1,13 @@ +Document: frown-guide +Title: Frown manual +Author: Ralf Hinze +Abstract: Manual for the parser generator frown, a LALR(k) parser + generator for Haskell 98. +Section: apps/devel + +Format: html +Index: /usr/share/doc/frown/html/index.html +Files: /usr/share/doc/frown/html/*.html + +Format: PDF +Files: /usr/share/doc/frown/Manual.pdf --- frown-0.6.1.orig/debian/rules +++ frown-0.6.1/debian/rules @@ -0,0 +1,23 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/class/makefile.mk +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/rules/dpatch.mk + +DEB_COMPRESS_EXCLUDE = .pdf +DEB_MAKE_BUILD_TARGET = frown man +DEB_MAKE_INSTALL_TARGET = install PREFIX="$(DEB_DESTDIR)usr" doc="$(DEB_DESTDIR)usr/share/doc/frown" +DEB_MAKE_CLEAN_TARGET = distclean +# DEB_MAKE_CHECK_TARGET = test + +clean:: + dh_testdir + rm -f Manual/Manual.pdf Manual/Manual.ps Manual/Manual.dvi Manual/Manual.tex + rm -rf Manual/html Manual/Manual[0-9]*.png Manual/*_motif.gif + +binary-post-install/frown:: + rm debian/frown/usr/share/doc/frown/README + rm debian/frown/usr/share/doc/frown/examples/manual/Sessions.lhs + rm debian/frown/usr/share/doc/frown/examples/manual/TestFrown.lhs + +.PHONY: update-debian-control --- frown-0.6.1.orig/debian/dirs +++ frown-0.6.1/debian/dirs @@ -0,0 +1 @@ +usr/bin --- frown-0.6.1.orig/debian/control +++ frown-0.6.1/debian/control @@ -0,0 +1,53 @@ +Source: frown +Section: devel +Priority: optional +Maintainer: Arjan Oosting +Build-Depends: cdbs (>= 0.4.23-1.1), debhelper (>= 5), dpatch, ghc6, + hevea, lhs2tex, texlive-latex-base | tetex-bin, + texlive-latex-recommended | tetex-extra, + texlive-latex-extra | tetex-extra, texlive-math-extra | tetex-extra +Standards-Version: 3.7.2 +XS-Vcs-Svn: https://moonshine.dnsalias.org/svn/arjan-public/debian/frown +XS-Vcs-Browser: https://moonshine.dnsalias.org/wsvn/arjan-public/debian/frown + +Package: frown +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: LALR(k) parser generator for Haskell 98 + Frown is inspired by the parser generator Happy and uses a syntax + quite simular as the syntax used by Happy. Happy only handles LALR(1) + grammars while Frown can use more extensive LALR(k) grammars and the + parsers generated by Frown are also faster than the parsers generated + by Happy. + . + The salient features of Frown are: + - The generated parsers are time and space efficient. On the + downside, the parsers are quite large. + - Frown generates four different types of parsers. As a common + characteristic, the parsers are genuinely functional + (ie 'table-free'); the states of the underlying LR automaton are + encoded as mutually recursive functions. Three output formats use + a typed stack representation, one format due to Ross Paterson + (code=stackless) works even without a stack. + - Encoding states as functions means that each state can be treated + individually as opposed to a table driven-approach, which + necessitates a uniform treatment of states. For instance, + look-ahead is only used when necessary to resolve conflicts. + - Frown comes with debugging and tracing facilities; the standard + output format due to Doaitse Swierstra (code=standard) may be + useful for teaching LR parsing. + - Common grammatical patterns such as repetition of symbols can be + captured using rule schemata. There are several predefined rule + schemata. + - Terminal symbols are arbitrary variable-free Haskell patterns or + guards. Both terminal and nonterminal symbols may have an + arbitrary number of synthesized attributes. + - Frown comes with extensive documentation; several example grammars + are included. + . + Furthermore, Frown supports the use of monadic lexers, monadic + semantic actions, precedences and associativity, the generation of + backtracking parsers, multiple start symbols, error reporting and a + weak form of error correction. + . + Homepage: http://www.informatik.uni-bonn.de/~ralf/frown/index.html --- frown-0.6.1.orig/debian/control.in +++ frown-0.6.1/debian/control.in @@ -0,0 +1,49 @@ +Source: frown +Section: devel +Priority: optional +Maintainer: Arjan Oosting +Build-Depends: @cdbs@, ghc6, hevea, lhs2tex, tetex-extra +Standards-Version: 3.7.2 +XS-Vcs-Svn: https://moonshine.dnsalias.org/svn/arjan-public/debian/frown + +Package: frown +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: LALR(k) parser generator for Haskell 98 + Frown is inspired by the parser generator Happy and uses a syntax + quite simular as the syntax used by Happy. Happy only handles LALR(1) + grammars while Frown can use more extensive LALR(k) grammars and the + parsers generated by Frown are also faster than the parsers generated + by Happy. + . + The salient features of Frown are: + - The generated parsers are time and space efficient. On the + downside, the parsers are quite large. + - Frown generates four different types of parsers. As a common + characteristic, the parsers are genuinely functional + (ie 'table-free'); the states of the underlying LR automaton are + encoded as mutually recursive functions. Three output formats use + a typed stack representation, one format due to Ross Paterson + (code=stackless) works even without a stack. + - Encoding states as functions means that each state can be treated + individually as opposed to a table driven-approach, which + necessitates a uniform treatment of states. For instance, + look-ahead is only used when necessary to resolve conflicts. + - Frown comes with debugging and tracing facilities; the standard + output format due to Doaitse Swierstra (code=standard) may be + useful for teaching LR parsing. + - Common grammatical patterns such as repetition of symbols can be + captured using rule schemata. There are several predefined rule + schemata. + - Terminal symbols are arbitrary variable-free Haskell patterns or + guards. Both terminal and nonterminal symbols may have an + arbitrary number of synthesized attributes. + - Frown comes with extensive documentation; several example grammars + are included. + . + Furthermore, Frown supports the use of monadic lexers, monadic + semantic actions, precedences and associativity, the generation of + backtracking parsers, multiple start symbols, error reporting and a + weak form of error correction. + . + Homepage: http://www.informatik.uni-bonn.de/~ralf/frown/index.html --- frown-0.6.1.orig/debian/frown.1 +++ frown-0.6.1/debian/frown.1 @@ -0,0 +1,82 @@ +.TH frown "1" "November 2005" "Frown :-( version 0.6" "User Commands" +.SH NAME +frown \- an LALR(k) parser generator for Haskell 98 +.SH SYNOPSIS +.B frown +[ +.IR options " ..." +] +.IR file ".[i]g ..." +.SH DESCRIPTION +.TP +.BR \-b ", " \-\-backtrack +generate a backtracking parser +.TP +.BR \-c [ compact | gvstack | stackless | standard "], " \-\-code [ =compact | gvstack | stackless | standard ] +select output format +.TP +.B \-\-copying +display details of copying +.TP +.BR \-d ", " \-\-debug +emit debugging information +.TP +.BR \-e ", " \-\-expected +pass a list of expected terminals to \(oqfrown\(cq +.TP +.BR \-g ", " \-\-ghc +use GHC extensions +.TP +.BR \-h ", " \-? ", " \-\-help +print this information +.TP +.BR \-i ", " \-\-info +put additional information into generated file +.TP +\fB\-k\fP\fIn\fP, \fB\-\-lookahead=\fP\fIn\fP +use \fIn\fP tokens of lookahead +.TP +.BR \-l ", " \-\-lexer +use a monadic lexer (\(oqget :: M Terminal\(cq) +.TP +.BR \-n ", " \-\-noinline +generate NOINLINE pragmas +.TP +.BR \-O ", " \-\-optimize +optimize parser +.TP +\fB\-p\fP\fIn\fP, \fB\-\-pagewidth=\fP\fIn\fP +use the specified pagewidth \fIn\fP for pretty printing +.TP +\fB\-\-prefix=\fP\fIstring\fP +use the given \fIstring\fP as prefix for frown generated variables +.TP +.BR \-s [ mono | poly "], " \-\-signature [ =mono | poly ] +add type signatures +.TP +\fB\-\-suffix=\fP\fIstring\fP +use the given \fIstring\fP as suffix for frown generated variables +.TP +.BR \-t ", " \-\-trace +insert calls to tracing routines (\(oqshift\(cq, \(oqreduce\(cq and \(oqaccept\(cq) +.TP +.BR \-v ", " \-\-verbose +be verbose +.TP +.B \-\-version +print version information +.TP +.B \-\-warranty +display details of warranty +.PP +.SH COPYRIGHT +\(co 2002 \(en 2005 Ralf Hinze +.PP +This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License (version 2) as published by the Free Software Foundation. +.PP +This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU General Public License for more details. +.PP +You should have received a copy of the GNU General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +.SH AUTHOR +This manual page was written by Arjan Oosting for the Debian system (but may be used by others). --- frown-0.6.1.orig/debian/frown.install +++ frown-0.6.1/debian/frown.install @@ -0,0 +1,6 @@ +QuickStart usr/share/doc/frown/examples +Manual/Examples/*.lg usr/share/doc/frown/examples/manual +Manual/Examples/*.lhs usr/share/doc/frown/examples/manual +Examples/*.g usr/share/doc/frown/examples/other +Examples/*.lg usr/share/doc/frown/examples/other +Examples/Haskell usr/share/doc/frown/examples/other \ No newline at end of file --- frown-0.6.1.orig/debian/frown.manpages +++ frown-0.6.1/debian/frown.manpages @@ -0,0 +1 @@ +debian/frown.1 --- frown-0.6.1.orig/debian/patches/02_ignore-hugs-version-in-test-frown.dpatch +++ frown-0.6.1/debian/patches/02_ignore-hugs-version-in-test-frown.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 02_ignore-hugs-version-in-test-frown.dpatch by Arjan Oosting +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: ignore the version header of Hugs in the output of the test cases. + +@DPATCH@ +diff -urNad frown~/Examples/TestFrown.lhs frown/Examples/TestFrown.lhs +--- frown~/Examples/TestFrown.lhs 2006-01-13 00:09:44.000000000 +0100 ++++ frown/Examples/TestFrown.lhs 2006-09-28 02:06:03.000000000 +0200 +@@ -45,7 +45,7 @@ + > opts' = map ("--" ++) opts + > (s, _) = revBreak (== '.') g + > t = init s +-> diff | flag = "| diff -q - " ++> diff | flag = "| diff -I\"|| Version: .* _\" -q - " + > | otherwise = "> " + + NB. The `|-98|' is only needed for `|LexTerm|'. --- frown-0.6.1.orig/debian/patches/00list +++ frown-0.6.1/debian/patches/00list @@ -0,0 +1,5 @@ +01_imagen-creates-png-files +02_ignore-hugs-version-in-test-frown +03_update-empty.out +04_manual-typos +05_only-build-pdf --- frown-0.6.1.orig/debian/patches/04_manual-typos.dpatch +++ frown-0.6.1/debian/patches/04_manual-typos.dpatch @@ -0,0 +1,55 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 04_manual-typos.dpatch by Arjan Oosting +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: add missing backslashes before LaTeX ldots command. + +@DPATCH@ +diff -urNad frown~/Manual/Manual.lhs frown/Manual/Manual.lhs +--- frown~/Manual/Manual.lhs 2005-12-30 00:44:36.000000000 +0100 ++++ frown/Manual/Manual.lhs 2006-09-28 02:06:55.000000000 +0200 +@@ -524,7 +524,7 @@ + source file (@Paren1.lg@\footnote{The source files of the examples are + located in the directory @Manual/Examples@.}) defines the language of + well-balanced parentheses. The specification of the grammar is +-enclosed in special curly braces `|%{ ldots }%|'. The remainder ++enclosed in special curly braces `|%{ \ldots }%|'. The remainder + contains Haskell source code, that is, a module header and a function + declaration. + % +@@ -543,7 +543,7 @@ + By convention, the first nonterminal is also the start symbol of + the grammar (this default can be overwritten, see~Sec.~\ref{sec:multiple}). + +-Productions have the general form |n : v_1, ldots, v_k;| where |n| is ++Productions have the general form |n : v_1, \ldots, v_k;| where |n| is + a nonterminal and |v_1|, \ldots, |v_k| are symbols. Note that the + symbols are separated by commas and terminated by a semicolon. The + mandatory trailing semicolon helps to identify so-called +@@ -817,7 +817,7 @@ + pure one. It is, however, also possible to provide a monadic action + that \emph{computes} the value of the attribute. The computation lives + in the underlying parsing monad. Monadic actions are enclosed in `|{% +-ldots }|' braces and have type |m t| where |m| is the type of the ++\ldots }|' braces and have type |m t| where |m| is the type of the + underlying monad and |t| is the type of attributes. + + As an example, the following variant of the desktop calculator +@@ -1381,7 +1381,7 @@ + < | Ident "then" as "then" + < | Ident "else" as "else" + < | Ident {String}; +-< | ldots ++< | \ldots + + Note that keywords are declared just by listing them before the + general pattern for identifiers. +@@ -1392,7 +1392,7 @@ + following example. + + < Terminal = guard { isAlpha } as "alpha" +-< | ldots ++< | \ldots + + A guard is introduced by the keyword |guard|, followed by its Haskell + definition, followed by the mandatory shortcut. The shortcut can then --- frown-0.6.1.orig/debian/patches/03_update-empty.out.dpatch +++ frown-0.6.1/debian/patches/03_update-empty.out.dpatch @@ -0,0 +1,26 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 03_update-empty.out.dpatch by Arjan Oosting +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: update the Empty example to match the output given by the +## DP: version of Hugs in unstable + +@DPATCH@ +diff -urNad frown~/Examples/Empty.out frown/Examples/Empty.out +--- frown~/Examples/Empty.out 2005-12-30 00:45:09.000000000 +0100 ++++ frown/Examples/Empty.out 2006-09-28 02:06:39.000000000 +0200 +@@ -3,10 +3,10 @@ + ||___|| ||__|| ||__|| __|| Copyright (c) 1994-2005 + ||---|| ___|| World Wide Web: http://haskell.org/hugs + || || Report bugs to: hugs-bugs@haskell.org +-|| || Version: March 2005 _________________________________________ ++|| || Version: 20050308 _________________________________________ + + Hugs mode: Restart with command line option +98 for Haskell 98 mode + +-ERROR "Empty.hs":33 - Undefined variable "parse_1__" +-Hugs.Base> ERROR - Undefined variable "s" +-Hugs.Base> [Leaving Hugs] ++Type :? for help ++Main> ERROR - Undefined variable "s" ++Main> [Leaving Hugs] --- frown-0.6.1.orig/debian/patches/01_imagen-creates-png-files.dpatch +++ frown-0.6.1/debian/patches/01_imagen-creates-png-files.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01_imagen-creates-png-files.dpatch by Arjan Oosting +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: imagen generates png files instead of gif files on a Debian system. + +@DPATCH@ +diff -urNad frown~/Manual/Makefile frown/Manual/Makefile +--- frown~/Manual/Makefile 2006-01-13 00:09:44.000000000 +0100 ++++ frown/Manual/Makefile 2006-09-28 02:05:29.000000000 +0200 +@@ -117,7 +117,7 @@ + hacha $(file).html + imagen $(file) + mkdir -p html +- mv index.html $(file).html $(file).css $(file)[0-9]*.html $(file)[0-9]*.gif *motif.gif html ++ mv index.html $(file).html $(file).css $(file)[0-9]*.html $(file)[0-9]*.png *motif.gif html + + spell: $(file).tex + egrep -v '$\%' $(file).tex | $(spell) $(file).spell | sort | uniq --- frown-0.6.1.orig/debian/patches/05_only-build-pdf.dpatch +++ frown-0.6.1/debian/patches/05_only-build-pdf.dpatch @@ -0,0 +1,23 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 05_only-build-pdf.patch.dpatch by Arjan Oosting +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: don't build and install the manual in PS format. + +@DPATCH@ +diff -urNad frown~/Manual/Makefile frown/Manual/Makefile +--- frown~/Manual/Makefile 2006-09-28 02:07:12.000000000 +0200 ++++ frown/Manual/Makefile 2006-09-28 02:07:12.000000000 +0200 +@@ -69,11 +69,10 @@ + + .PHONY : man examples edit xdvi gv acro print spell spellupdate links clean distclean + +-man: $(file).ps $(file).pdf html ++man: $(file).pdf html + + install: man + mkdir -p $(doc) +- cp $(file).ps $(doc) + cp $(file).pdf $(doc) + cp -r html $(doc) +