--- drift-2.2.3.orig/debian/changelog +++ drift-2.2.3/debian/changelog @@ -0,0 +1,250 @@ +drift (2.2.3-2.2) unstable; urgency=low + + * Non-maintainer upload. + * debian/patches/ghc-7.4-fixes.dpatch: Update the imports and some code to + cope with new module names in GHC 7.4. (Closes: #669554) + * Add BD on libghc-random-dev, as this is no longer shipped by GHC + + -- Iain Lane Tue, 18 Sep 2012 21:45:31 +0100 + +drift (2.2.3-2.1) unstable; urgency=low + + * Non-maintainer upload. + * Patch by Hideki Ymane and Colin Watson, fixes FTBFS, as there is no ghc6 + package anymore, changed ghc6 references to ghc, incl. build-deps. + (Closes: #625198) + + -- Konstantinos Margaritis Tue, 31 Jan 2012 18:00:21 +0000 + +drift (2.2.3-2) unstable; urgency=low + + * Added README.Debian which explains how to rebuild DrIFT in case you + want to add your own derivation rules. (Closes: #433412) + * Fix lintian warning "doc-base-unknown-section drift-manual:6 + Apps/Programming" + * debian/control: + - Let the Vcs-* fields point to the trunk branch. + - Add doc-base to the Suggests. + * debian/rules: + - Remove src/Rules.hs on clean which is generated during the build. + + -- Arjan Oosting Sun, 16 Mar 2008 23:35:33 +0100 + +drift (2.2.3-1) unstable; urgency=low + + * New upstream release. + * debian/control.in: Old cruft thus removed. + * debian/patches/10_update-autotools.dpatch: Removed. + * debian/watch: Don't execute svn-upgrade automatically after + downloading a new upstream version of DrIFT. + + -- Arjan Oosting Mon, 11 Feb 2008 07:13:01 +0100 + +drift (2.2.1-3) unstable; urgency=low + + * debian/control: + - Update XS-Vcs-* fields as the packages has moved to the pkg-haskell + subversion archive. + - Remove Hompage from the long descriptions and a the new Homepage + field. + - Replace Xs-Vcs-* fields for the new official Vcs-* fields. + - Bump Standards-Version to 3.7.3. No changes needed. + * debian/drift.doc-base: + - Fix lintian warning doc-base-file-separator-extra-whitespaces. + + -- Arjan Oosting Mon, 07 Jan 2008 17:58:01 +0100 + +drift (2.2.1-2) unstable; urgency=low + + * debian/compat: Change to debhelper compatibility level 5. + * debian/control: + - Add XS-Vcs-Browser field. + - Bump dependency on debhelper to debhelper 5 or higher. + - Prefer to build against texlive instead of tetex by replacing the + build dependency on tetex-bin with a build dependency on + texlive-latex-base | tetex-bin. + + -- Arjan Oosting Thu, 12 Apr 2007 00:58:31 +0200 + +drift (2.2.1-1) experimental; urgency=low + + * New upstream release. + * debian/rules: enclose paths in double quotes because directories can + contain spaces. + + -- Arjan Oosting Fri, 26 Jan 2007 10:39:43 +0100 + +drift (2.2.0-5) unstable; urgency=low + + * Make drift 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 Wed, 8 Nov 2006 19:06:14 +0100 + +drift (2.2.0-4) unstable; urgency=low + + * debian/control.in.in: + - Add XS-Vcs-Svn field pointing to subversion archive which contains + this package. + - Change maintainer email adress. + + -- Arjan Oosting Thu, 19 Oct 2006 18:09:00 +0200 + +drift (2.2.0-3) unstable; urgency=low + + * debian/control.in.in: Build-Depends on tex-common (>= 0.23) to make + sure the font cache is writeable. This will fix the empty pages in the + manual. (Closes: #367413) + * debian/copyright: added Debian packaging copyright notice. + * debian/drift.doc-base: change section to Apps/Programming. The + section should follow the sections outlined in the Debian menu + policy. + + -- Arjan Oosting Fri, 30 Jun 2006 21:56:38 +0200 + +drift (2.2.0-2) unstable; urgency=low + + * debian/changelog: fix some spelling mistakes. + * debian/drift.doc-base: add missing Index field for info format. + (Closes: #366198) + * debian/control.in: update to policy version 3.7.2. No changes needed. + + -- Arjan Oosting Sat, 6 May 2006 18:29:16 +0200 + +drift (2.2.0-1) unstable; urgency=low + + * New upstream release. + * debian/control: update build dependencies. + + -- Arjan Oosting Tue, 7 Mar 2006 23:59:52 +0100 + +drift (2.1.2-2) unstable; urgency=low + + * Only build drift with ghc6 as nhc98 is removed from the Debian + archive. + * debian/control: Update build dependencies because ghc6 is also + available on GNU/kFreeBSD. (Closes: #345205) + + -- Arjan Oosting Thu, 29 Dec 2005 20:20:34 +0100 + +drift (2.1.2-1) unstable; urgency=low + + * New upstream release. + * added debian/patches/01_update-autotools.patch: update files + generated by autotools. + + -- Arjan Oosting Wed, 28 Sep 2005 14:37:51 +0200 + +drift (2.1.1-5) unstable; urgency=low + + * Updated man pages to Branden Robinson's recommendations. + * Don't install the README which does not contain useful information + for us. + * debian/control.in.in: updated to Standards-Version 3.6.2. No changes + needed. + * DrIFT now Depends on libgmp3c2. (Closes: #327491). + + -- Arjan Oosting Mon, 15 Aug 2005 18:33:36 +0200 + +drift (2.1.1-4) unstable; urgency=low + + * debian/rules: added update-haskell-control target to update + /debian/control. + * Disable DEB_AUTO_UPDATE_DEBIAN_CONTROL. Updating debian/control + during regular builds is considered bad feature of cdbs. + The update-debian-control target of debian/rules can be used to + update debian/control. + + -- Arjan Oosting Thu, 9 Jun 2005 16:15:27 +0200 + +drift (2.1.1-3) unstable; urgency=low + + * Use update-haskell-control to generate the build dependencies. + * debian/rules: add update-haskell-control --check to see if the build + dependencies are still in sync (between debian/control.in.in and + debian/control.in). + + -- Arjan Oosting Sat, 4 Jun 2005 15:07:42 +0200 + +drift (2.1.1-2) unstable; urgency=low + + * debian/rules: if ghc6 is not available build DrIFT with nhc98. + * debian/control.in: add nhc98 to Build-Depends for arm mips and + mipsel. + + -- Arjan Oosting Wed, 1 Jun 2005 22:56:47 +0200 + +drift (2.1.1-1) unstable; urgency=low + + * New upstream release. + * Change from tarball-in-tarball packaging to normal upstream is + orig.tar.gz packaging. + * debian/rules: install drift-ghc again, which provides preprocessor + capabilities for using DrIFT with ghc. + * debian/control.in: fix typo in cdbs version number (thanks linda). + * debian/control.in: dvips is a virtual package, change build + dependency to tetex-bin. + * debian/drift-ghc.1, debian/manpages: added man page for drift-ghc. + * debian/watch: added watch file. + + -- Arjan Oosting Wed, 4 May 2005 02:38:51 +0200 + +drift (2.1.0-5) unstable; urgency=low + + * Close ITP. (Closes: #295927). + + -- Arjan Oosting Sat, 19 Feb 2005 05:56:30 +0100 + +drift (2.1.0-4) unstable; urgency=low + + * debian/rules: do not install /usr/bin/drift-ghc, which lacks + documentation and does not seem very useful. + + -- Arjan Oosting Sat, 19 Feb 2005 05:36:30 +0100 + +drift (2.1.0-3) unstable; urgency=low + + * debian/rules: support DEB_BUILD_OPTIONS=noopt. + * debian/DrIFT.1, debian/manpages: + - added man page for DrIFT. + + -- Arjan Oosting Sun, 13 Feb 2005 19:48:37 +0100 + +drift (2.1.0-2) unstable; urgency=low + + * debian/control.in: added. + * debian/rules: generated debian/control on clean. + * debian/copyright: corrected license. + + -- Arjan Oosting Sun, 13 Feb 2005 19:36:37 +0100 + +drift (2.1.0-1) unstable; urgency=low + + * New upstream release. + + -- Arjan Oosting Sun, 9 Jan 2005 02:46:26 +0100 + +drift (2.0.4-3) unstable; urgency=low + + * debian/rules: + - regenerated drift.html. + * debian/control: + - added texi2html to Build-Depends. + + -- Arjan Oosting Wed, 1 Dec 2004 02:25:31 +0100 + +drift (2.0.4-2) unstable; urgency=low + + * debian/drift.doc-base: + - corrected syntax error. + + -- Arjan Oosting Wed, 1 Dec 2004 01:52:15 +0100 + +drift (2.0.4-1) unstable; urgency=low + + * Initial Release. + + -- Arjan Oosting Tue, 30 Nov 2004 23:42:03 +0100 + --- drift-2.2.3.orig/debian/compat +++ drift-2.2.3/debian/compat @@ -0,0 +1 @@ +5 --- drift-2.2.3.orig/debian/manpages +++ drift-2.2.3/debian/manpages @@ -0,0 +1,2 @@ +debian/DrIFT.1 +debian/drift-ghc.1 --- drift-2.2.3.orig/debian/rules +++ drift-2.2.3/debian/rules @@ -0,0 +1,34 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/class/autotools.mk +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/rules/dpatch.mk + +DEB_CONFIGURE_EXTRA_FLAGS := --with-hc=ghc + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + DEB_CONFIGURE_EXTRA_FLAGS := $(DEB_CONFIGURE_EXTRA_FLAGS) --with-hcflags="-O0" +else + DEB_CONFIGURE_EXTRA_FLAGS := $(DEB_CONFIGURE_EXTRA_FLAGS) --with-hcflags="-O2" +endif + +# Don't compress pdf files since pdf reader can not read pdf.gz files. +DEB_COMPRESS_EXCLUDE := .pdf + +clean:: + rm -f docs/stamp-vti + rm -f docs/version.texi + rm -f src/Rules.hs + +common-build-arch:: + rm -f "$(DEB_BUILDDIR)/docs/drift.html" + make -C "$(DEB_BUILDDIR)" docs +# make -C "$(DEB_BUILDDIR)" pdf + +binary-post-install/drift:: + install -m 644 -o root -g root "$(DEB_BUILDDIR)/docs/drift.html" debian/drift/usr/share/doc/drift/html + install -m 644 -o root -g root "$(DEB_BUILDDIR)/docs/drift.ps" debian/drift/usr/share/doc/drift +# install -m 644 -o root -g root "$(DEB_BUILDDIR)/docs/drift.pdf" debian/drift/usr/share/doc/drift + rm debian/drift/usr/share/doc/drift/README + +.PHONY: update-debian-control --- drift-2.2.3.orig/debian/README.Debian +++ drift-2.2.3/debian/README.Debian @@ -0,0 +1,45 @@ +DrIFT can be extended to use new rules supplied by the user by adding +the new rules to the src/Rules directory of the source and recompiling +DrIFR (see chapter 4 of the manual). + +To create a Debian package of DrIFT with your own rules file you have +to download the source package. add you own Haskell source file with +rules, build the package and install the resulting Debian packages: + +1. First make sure you have (added) the right deb-src lines to your + /etc/apt/sources.lst file. If your /etc/apt/sources.lst file + contains + + deb http://ftp.nl.debian.org/debian/ lenny main + + You should also have the corresponding deb-src line + + deb-src http://ftp.nl.debian.org/debian/ lenny main + +2. Install the necessary tools to rebuild the DrIFT package + + # apt-get update + # apt-get install devscripts build-essential + # apt-get build-dep drift + +3. Download and unpack the source package + + # apt-get source drift + # cd drift-* + +4. Add your own rules as additional Haskell files to the + src/Rules directory. + +5. Append the Debian version with your local suffix which indicates + that you have your changed version of DrIFT installed and rebuild + the package + + # dch --local local "Added my own rules" + # debuild + +6. Install the resulting packages + + # cd .. + # dpkg -i drift_*local*.deb + + -- Arjan Oosting , Sun, 16 Mar 2008 23:32:59 +0100 --- drift-2.2.3.orig/debian/drift-ghc.1 +++ drift-2.2.3/debian/drift-ghc.1 @@ -0,0 +1,28 @@ +.TH drift-ghc "1" "July 2005" "DrIFT version 2.1.1" "User Commands" +.SH NAME +drift\-ghc \- a script to use drift as preprocessor of ghc. +.SH SYNOPSIS +.B ghc \-pgmF drift\-ghc -F +[ +.IR options " ..." +] +.IR files " ..." +.SH DESCRIPTION +The script \fBdrift\-ghc\fP enables \fBghc\fP to use \fBDrIFT\fP as preprocessor. +By giving the appropriate commandline options \fBghc\fP will call \fBdrift\-ghc\fP as preprocessor. +This script will then call \fBDrIFT\fP in a usefull manner. +.SH COPYRIGHT +\(co 2002 \(en 2004 DrIFT contributors +.PP +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +.PP +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +.PP +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +.SH "SEE ALSO" +.BR DrIFT (1), +.BR ghc (1), +.SH AUTHOR +This manual page was written by Arjan Oosting for the Debian system (but may be used by others). + + --- drift-2.2.3.orig/debian/DrIFT.1 +++ drift-2.2.3/debian/DrIFT.1 @@ -0,0 +1,80 @@ +.TH DrIFT "1" "July 2005" "DrIFT, version 2.1.0" "User Commands" +.SH NAME +DrIFT \- a type sensitive preprocessor for Haskell +.SH SYNOPSIS +.B DrIFT +[ +.IR options " ..." +] +.IR file " ..." +.SH DESCRIPTION +It extracts type declarations and directives from modules. +The directives cause rules to be fired on the parsed type declarations, generating new code which is then appended to the bottom of the input file. +The rules are expressed as Haskell code, and it is intended that the user can add new rules as required. +.PP +DrIFT automates instance derivation for classes that aren't supported by the standard compilers. +In addition, instances can be produced in separate modules to that containing the type declaration. +This allows instances to be derived for a type after the original module has been compiled. +As a bonus, simple utility functions can also be produced from a type. +.TP +\fB\-v\fP, \fB\-\-verbose\fP +chatty output on stderr +.TP +\fB\-V\fP, \fB\-\-version\fP +show version number +.TP +\fB\-l\fP, \fB\-\-list\fP +list available derivations +.TP +\fB\-L\fP, \fB\-\-noline\fP +omit line pragmas from output +.TP +\fB\-o\fP FILE, \fB\-\-output\fP=\fIFILE\fP +output FILE +.TP +\fB\-s\fP name:value, \fB\-\-set=\fPname:value +set argument to value +.TP +\fB\-r\fP, \fB\-\-results-only\fP +output only results, do not include source file +.TP +\fB\-g\fP rule, \fB\-\-global\fP=\fIrule\fP +addition rules to apply globally +.TP +\fB-i\fP, \fB\-\-ignore\fP +ignore directives in file, which is useful with \-g +.PP +.SH ENVIRONMENT +The environment variable DERIVEPATH can be used to declare a list of directories which contain the modules and/or interfaces that define the additional classes you wish to derive from. +DrIFT is quite fussy about the format of the DERIVEPATH variable. +The directory list should have the following format: +.PP +.RS +* each path should be separated by \(oq:\(cq +.br +* no space inserted anywhere +.br +* no final \(oq/\(cq on the end of a path +.RE +.PP +Examples of DERIVEPATH settings: +.br +good - /users/grad/nww/share/hugs/lib:/users/grad/nww/share/hugs/lib/hugs +.br +bad - /users/grad/nww/share/hugs/lib/:/users/grad/nww/share/hugs/lib/hugs/ +.SH COPYRIGHT +\(co 2002 \(en 2004 DrIFT contributors +.PP +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +.PP +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +.PP +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +.SH "SEE ALSO" +.BR drift-ghc (1), +.BR ghc (1), +.PP +.SH AUTHOR +This manual page was written by Arjan Oosting for the Debian system (but may be used by others). + --- drift-2.2.3.orig/debian/dirs +++ drift-2.2.3/debian/dirs @@ -0,0 +1,2 @@ +usr/bin +usr/share/doc/drift/html --- drift-2.2.3.orig/debian/watch +++ drift-2.2.3/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://repetae.net/john/computer/haskell/DrIFT/drop/DrIFT-([\d\.]*)\.tar\.gz --- drift-2.2.3.orig/debian/control +++ drift-2.2.3/debian/control @@ -0,0 +1,37 @@ +Source: drift +Section: devel +Priority: optional +Maintainer: Arjan Oosting +Build-Depends: cdbs (>= 0.4.23-1.1), autotools-dev, debhelper (>= 5.0.0), dpatch, ghc, texlive-latex-base | tetex-bin, tex-common (>= 0.23), texinfo, texi2html, libghc-random-dev +Standards-Version: 3.7.3 +Vcs-Svn: svn://svn.debian.org/svn/pkg-haskell/packages/drift/trunk +Vcs-Browser: http://svn.debian.org/wsvn/pkg-haskell/packages/drift/trunk +Homepage: http://repetae.net/john/computer/haskell/DrIFT/ + +Package: drift +Architecture: any +Section: devel +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: ghc +Suggests: doc-base +Description: type sensitive preprocessor for Haskell + DrIFT automates instance derivation for classes that aren't supported + by the standard compilers. In addition, instances can be produced in + separate modules to that containing the type declaration. This allows + instances to be derived for a type after the original module has been + compiled. As a bonus, simple utility functions can also be produced + from a type. + . + Features: + - DrIFT comes with a set of rules to produce instances for all + derivable classes given in the Haskell Prelude. There are also a + number of extra useful rules to derive instances of a variety of + useful classes. + - DrIFT performs import chasing to find the definition of a type. + - Code is generated using pretty-printing combinators. This means + that the output is (fairly) well formatted, and easy on the eye. + - Effort has been made to make the rule interface as easy to use as + possible. This is to allow users to add rules to generate code + specific to their own projects. As the rules are themselves + written in Haskell, the user doesn't have to learn a new language + to express rules. --- drift-2.2.3.orig/debian/copyright +++ drift-2.2.3/debian/copyright @@ -0,0 +1,36 @@ +This package was debianized by Arjan Oosting on +Tue, 30 Nov 2004 23:42:03 +0100. + +It was downloaded from http://repetae.net/john/computer/haskell/DrIFT/ + +Copyright: (C) 2002-2006 DrIFT contributors + +Upstream Author: John Meacham + +License: + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Debian packaging copyright: + +(C) 2004-2006 Arjan Oosting + +The Debian packaging may be redistributed and/or modified under the +same terms as DrIFT itself. --- drift-2.2.3.orig/debian/drift.doc-base +++ drift-2.2.3/debian/drift.doc-base @@ -0,0 +1,17 @@ +Document: drift-manual +Title: DrIFT User Guide +Author: Noel Winstanley and John Meacham +Abstract: This is a guide to using DrIFT, a type sensitive + preprocessor for Haskell 98. +Section: Programming + +Format: postscript +Files: /usr/share/doc/drift/drift.ps.gz + +Format: info +Index: /usr/share/info/drift.info.gz +Files: /usr/share/info/drift.info.gz + +Format: HTML +Index: /usr/share/doc/drift/html/drift.html +Files: /usr/share/doc/drift/html/*.html --- drift-2.2.3.orig/debian/patches/ghc-7.4-fixes.dpatch +++ drift-2.2.3/debian/patches/ghc-7.4-fixes.dpatch @@ -0,0 +1,281 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## Description: Alter imports for new modules exposed by GHC 7.4 +## Origin/Author: Iain Lane +## Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=669554 + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/ChaseImports.hs drift-2.2.3/src/ChaseImports.hs +--- drift-2.2.3~/src/ChaseImports.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/ChaseImports.hs 2012-09-18 21:23:49.074270747 +0100 +@@ -24,10 +24,10 @@ + import DataP + import CommandP + import ParseLib2 +-import System +-import List ++import Data.List + import qualified Unlit +-import Monad ++import Control.Monad ++import System.Environment(getEnv) + import GenUtil + + try x = catch (x >>= return . Right) (return . Left) +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/DrIFT.hs drift-2.2.3/src/DrIFT.hs +--- drift-2.2.3~/src/DrIFT.hs 2012-09-18 21:20:20.000000000 +0100 ++++ drift-2.2.3/src/DrIFT.hs 2012-09-18 21:23:49.074270747 +0100 +@@ -7,10 +7,10 @@ + import DataP + import GenUtil + import GetOpt +-import Char +-import IO hiding(try) +-import List (partition,isSuffixOf,sort, groupBy, sortBy) +-import Monad(unless) ++import Data.Char ++import System.IO ++import Data.List (partition,isSuffixOf,sort, groupBy, sortBy) ++import Control.Monad(unless) + import PreludData(preludeData) + import Pretty + import RuleUtils (commentLine,texts) +@@ -78,7 +78,7 @@ + + header = "Usage: DrIFT [OPTION...] file" + main = do +- argv <- System.getArgs ++ argv <- getArgs + (env,n) <- case (getOpt Permute options argv) of + (as,n,[]) -> return (foldr ($) env as ,n) + (_,_,errs) -> putErrDie (concat errs ++ usageInfo header options) +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/GenUtil.hs drift-2.2.3/src/GenUtil.hs +--- drift-2.2.3~/src/GenUtil.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/GenUtil.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -39,7 +39,7 @@ + -- ** Simple deconstruction + fromLeft,fromRight,fsts,snds,splitEither,rights,lefts, + -- ** System routines +- exitSuccess, System.exitFailure, epoch, lookupEnv,endOfTime, ++ exitSuccess, exitFailure, epoch, lookupEnv,endOfTime, + -- ** Random routines + repMaybe, + liftT2, liftT3, liftT4, +@@ -91,14 +91,17 @@ + UniqueProducer(..) + ) where + +-import Char(isAlphaNum, isSpace, toLower, ord) +-import List(group,sort) +-import List(intersperse, sortBy, groupBy) +-import Monad +-import qualified IO +-import qualified System +-import Random(StdGen, newStdGen, Random(randomR)) +-import Time ++import Data.Char(isAlphaNum, isSpace, toLower, ord) ++import Data.List(group,sort) ++import Data.List(intersperse, sortBy, groupBy) ++import Control.Monad hiding (replicateM, replicateM_) ++import System.IO (hPutStr, stderr) ++import System.IO.Error(isDoesNotExistError) ++import System.Random(StdGen, newStdGen, Random(randomR)) ++import System.Exit (exitWith, ExitCode(ExitSuccess), exitFailure) ++import System.Environment ++import System.Time ++import Data.Time + + {-# SPECIALIZE snub :: [String] -> [String] #-} + {-# SPECIALIZE snub :: [Int] -> [Int] #-} +@@ -127,7 +130,7 @@ + + -- | write string to standard error + putErr :: String -> IO () +-putErr = IO.hPutStr IO.stderr ++putErr = hPutStr stderr + + -- | write string and newline to standard error + putErrLn :: String -> IO () +@@ -137,13 +140,13 @@ + -- | write string and newline to standard error, + -- then exit program with failure. + putErrDie :: String -> IO a +-putErrDie s = putErrLn s >> System.exitFailure ++putErrDie s = putErrLn s >> exitFailure + + + -- | exit program successfully. 'exitFailure' is + -- also exported from System. + exitSuccess :: IO a +-exitSuccess = System.exitWith System.ExitSuccess ++exitSuccess = exitWith ExitSuccess + + + {-# INLINE fromRight #-} +@@ -381,7 +384,7 @@ + -- | looks up an enviornment variable and returns it in a 'MonadPlus' rather + -- than raising an exception if the variable is not set. + lookupEnv :: MonadPlus m => String -> IO (m String) +-lookupEnv s = catch (fmap return $ System.getEnv s) (\e -> if IO.isDoesNotExistError e then return mzero else ioError e) ++lookupEnv s = catch (fmap return $ getEnv s) (\e -> if isDoesNotExistError e then return mzero else ioError e) + + {-# SPECIALIZE fmapLeft :: (a -> c) -> [(Either a b)] -> [(Either c b)] #-} + fmapLeft :: Functor f => (a -> c) -> f (Either a b) -> f (Either c b) +@@ -482,7 +485,7 @@ + _ `overlaps` _ = True + + -- | translate a number of seconds to a string representing the duration expressed. +-showDuration :: Integral a => a -> String ++showDuration :: (Show a, Integral a) => a -> String + showDuration x = st "d" dayI ++ st "h" hourI ++ st "m" minI ++ show secI ++ "s" where + (dayI, hourI) = divMod hourI' 24 + (hourI', minI) = divMod minI' 60 +@@ -495,7 +498,7 @@ + -- arguments are given, read stdin. + + getArgContents = do +- as <- System.getArgs ++ as <- getArgs + let f "-" = getContents + f fn = readFile fn + cs <- mapM f as +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/GetOpt.hs drift-2.2.3/src/GetOpt.hs +--- drift-2.2.3~/src/GetOpt.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/GetOpt.hs 2012-09-18 21:23:49.074270747 +0100 +@@ -21,7 +21,7 @@ + ArgOrder(..), OptDescr(..), ArgDescr(..), usageInfo, getOpt + ) where + +-import List(isPrefixOf) ++import Data.List(isPrefixOf) + + data ArgOrder a -- what to do with options following non-options: + = RequireOrder -- no option processing after first non-option +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/Arbitrary.hs drift-2.2.3/src/Rules/Arbitrary.hs +--- drift-2.2.3~/src/Rules/Arbitrary.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/Arbitrary.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,6 +1,6 @@ + module Rules.Arbitrary(rules) where + +-import List ++import Data.List + import RuleUtils + + rules = [ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/Binary.hs drift-2.2.3/src/Rules/Binary.hs +--- drift-2.2.3~/src/Rules/Binary.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/Binary.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,6 +1,6 @@ + module Rules.Binary(rules) where + +-import List (nub,intersperse) ++import Data.List (nub,intersperse) + import RuleUtils + + rules = [ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/BitsBinary.hs drift-2.2.3/src/Rules/BitsBinary.hs +--- drift-2.2.3~/src/Rules/BitsBinary.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/BitsBinary.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,7 +1,7 @@ + -- stub module to add your own rules. + module Rules.BitsBinary(rules) where + +-import List (nub,intersperse) ++import Data.List (nub,intersperse) + import RuleUtils -- useful to have a look at this too + + rules = [ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/FunctorM.hs drift-2.2.3/src/Rules/FunctorM.hs +--- drift-2.2.3~/src/Rules/FunctorM.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/FunctorM.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,7 +1,7 @@ + -- stub module to add your own rules. + module Rules.FunctorM (rules) where + +-import List ++import Data.List + import RuleUtils + + rules = [ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/Generic.hs drift-2.2.3/src/Rules/Generic.hs +--- drift-2.2.3~/src/Rules/Generic.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/Generic.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -3,7 +3,7 @@ + + -- import StandardRules + import RuleUtils +-import List(intersperse) ++import Data.List(intersperse) + + + rules :: [RuleDef] +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/GhcBinary.hs drift-2.2.3/src/Rules/GhcBinary.hs +--- drift-2.2.3~/src/Rules/GhcBinary.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/GhcBinary.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,7 +1,7 @@ + -- stub module to add your own rules. + module Rules.GhcBinary (rules) where + +-import List (nub,intersperse) ++import Data.List (nub,intersperse) + import RuleUtils -- useful to have a look at this too + + rules = [ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/Monoid.hs drift-2.2.3/src/Rules/Monoid.hs +--- drift-2.2.3~/src/Rules/Monoid.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/Monoid.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,7 +1,7 @@ + -- stub module to add your own rules. + module Rules.Monoid (rules) where + +-import List ++import Data.List + import RuleUtils + + rules = [ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/Standard.hs drift-2.2.3/src/Rules/Standard.hs +--- drift-2.2.3~/src/Rules/Standard.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/Standard.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,7 +1,7 @@ + module Rules.Standard(rules) where + + import RuleUtils +-import List ++import Data.List + import GenUtil + + +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/Utility.hs drift-2.2.3/src/Rules/Utility.hs +--- drift-2.2.3~/src/Rules/Utility.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/Utility.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,6 +1,6 @@ + module Rules.Utility(rules) where + import RuleUtils +-import List ++import Data.List + import GenUtil + + rules :: [RuleDef] +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Rules/Xml.hs drift-2.2.3/src/Rules/Xml.hs +--- drift-2.2.3~/src/Rules/Xml.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Rules/Xml.hs 2012-09-18 21:23:49.078270747 +0100 +@@ -1,7 +1,7 @@ + -- expanded from stub module to add new rules. + module Rules.Xml(rules) where + +-import List (nub,sortBy) ++import Data.List (nub,sortBy) + import RuleUtils -- useful to have a look at this too + + rules :: [RuleDef] +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' drift-2.2.3~/src/Unlit.hs drift-2.2.3/src/Unlit.hs +--- drift-2.2.3~/src/Unlit.hs 2008-02-10 14:38:31.000000000 +0000 ++++ drift-2.2.3/src/Unlit.hs 2012-09-18 21:23:49.074270747 +0100 +@@ -5,7 +5,7 @@ + -- version 1.2, appendix C. + + +-import Char ++import Data.Char + + data Classified = Program String | Blank | Comment + | Include Int String | Pre String --- drift-2.2.3.orig/debian/patches/00list +++ drift-2.2.3/debian/patches/00list @@ -0,0 +1 @@ +ghc-7.4-fixes.dpatch --- drift-2.2.3.orig/src/DrIFT.hs +++ drift-2.2.3/src/DrIFT.hs @@ -17,7 +17,7 @@ import RuleUtils(Rule,Tag) import Version import qualified Rules(rules) -import qualified System +import System.Environment (getArgs) data Op = OpList | OpDerive | OpVersion --- drift-2.2.3.orig/src/DataP.lhs +++ drift-2.2.3/src/DataP.lhs @@ -10,9 +10,9 @@ >where >import ParseLib2 ->import Char ->import List ->import Monad +>import Data.Char +>import Data.List +>import Control.Monad >data Statement = DataStmt | NewTypeStmt deriving (Eq,Show) --- drift-2.2.3.orig/src/ParseLib2.hs +++ drift-2.2.3/src/ParseLib2.hs @@ -31,8 +31,8 @@ many1_offside,many_offside,off, opt, skipUntil, skipUntilOff,skipUntilParse,skipNest) where -import Char -import Monad +import Data.Char +import Control.Monad infixr 5 +++