Imported Debian patch 110.74-1
[hcoop/zz_old/debian/smlnj.git] / debian / control
diff --git a/debian/control b/debian/control
new file mode 100644 (file)
index 0000000..7e1f4f8
--- /dev/null
@@ -0,0 +1,202 @@
+Source: smlnj
+Section: devel
+Priority: optional
+Maintainer: James McCoy <jamessan@debian.org>
+Build-Depends: debhelper (>= 7), gcc-multilib [amd64]
+Build-Depends-Indep: texlive-latex-base, texlive-pictures, texlive-math-extra, texlive-latex-recommended, transfig, texlive-generic-extra, texlive-latex-extra, ghostscript, texlive-binaries
+Standards-Version: 3.8.4
+Homepage: http://www.smlnj.org/
+
+Package: smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj-runtime (= ${binary:Version})
+Replaces: sml-nj
+Recommends: libsmlnj-smlnj
+Suggests: smlnj-doc
+Description: Standard ML of New Jersey interactive compiler
+ SML/NJ is an implementation of the Standard ML programming language.
+ Standard ML has many features, including type safety, polymorphism,
+ algebraic data types with pattern matching, higher-order functions,
+ and a sophisticated module system. It is especially well-suited for
+ writing compilers and other language processors.
+ .
+ This package includes the interactive compiler (sml), the compilation
+ manager (CM), and some essential libraries.  It is a "working"
+ version, but believed to be stable.
+ .
+ Install this package if you want to program in SML.
+
+Package: smlnj-doc
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}
+Suggests: smlnj
+Description: Documentation for Standard ML of New Jersey
+ This package contains various documentation for SML/NJ, an
+ implementation of the Standard ML programming language.
+ .
+ More documentation can be found on the web site.
+
+Package: smlnj-runtime
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Description: Standard ML of New Jersey runtime system
+ SML/NJ is an implementation of the Standard ML programming language.
+ This package includes the runtime system only -- it provides garbage
+ collection and other support for compiled SML programs.
+ .
+ Install this package if you want to run programs compiled with SML/NJ.
+
+Package: libsmlnj-smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj (= ${binary:Version})
+Description: Useful libraries for Standard ML of New Jersey
+ A library for SML, including:
+  * Util        A general utility library.
+  * Controls    A library of support code for managing application controls.
+  * HashCons    A library supporting hash-consing of data structures and
+                efficient sets and maps using hash-consed keys.
+  * HTML        Provides parsing and pretty printing of HTML.
+  * INet        Networking utilities.
+  * PP          Pretty-printing library.
+  * Reactive    A low-level reactive scripting library.
+  * RegExp      Regular-expression library.
+  * Unix        A set of unix specific utilities.
+
+Package: ml-lex
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj-runtime (= ${binary:Version})
+Description: Lexical analyzer generator for Standard ML
+ Lexical analysis is the problem of segmenting input into words and
+ recognizing different classes of words.  ml-lex uses regular
+ expressions to describe classes of words.  It transforms a simple
+ declarative language specification into an efficient SML program for
+ analyzing that language.
+ .
+ Install this package if you want to produce a lexer in Standard ML.
+
+Package: ml-yacc
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj-runtime (= ${binary:Version})
+Description: Parser generator for Standard ML
+ SML version of the yacc program, generates a parser for a LALR language.
+ This package is useful for SML developers requiring a parser in their
+ work.
+
+Package: ml-burg
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, ml-lex (= ${binary:Version})
+Description: Code generator generator for Standard ML
+ ml-burg generates a Standard ML program to perform bottom-up
+ rewriting of an input tree.  Cost information associated with each
+ rewrite rule is used to derive the minimum rewrite cost for the
+ entire tree.  A successful reduction corresponds to rewriting the
+ input tree to a special non-terminal symbol called the "start"
+ non-terminal.  Upon successful reduction, facilities are provided to
+ walk the tree emitting semantic actions corresponding to the rules
+ that matched.
+ .
+ Install this package if you want to write a compiler in SML using a
+ burg specification.
+
+Package: libpgraphutil-smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj (= ${binary:Version})
+Description: Portable graph utility library for SML Compilation Manager
+ Utility routines for use with portable dependency graphs. This
+ package contains support to build list-of-edges dependency graphs and
+ convert them back into valid SML code.
+
+Package: libcml-smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, libsmlnj-smlnj (= ${binary:Version})
+Description: Concurrent ML extension of SML
+ An SML library for message-passing concurrency. This library adds
+ threading support to SML. Each thread is then manually executed by
+ running a separate function, rather than being called directly by the
+ top-level SML loop.
+
+Package: libcmlutil-smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, libcml-smlnj (= ${binary:Version})
+Description: Concurrent ML utility library
+ Not all modules in the normal SML/NJ library are thread safe. This
+ library provides thread-safe implementations of these
+ libraries.
+
+Package: libexene-smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, libcml-smlnj (= ${binary:Version}), libcmlutil-smlnj (= ${binary:Version})
+Description: Concurrent ML library for the X Window System
+ A multi-threaded X Window System toolkit written in Concurrent
+ ML. Many other windowing toolkits, such as Xlib, register separate
+ functions that are called by a centralized event processing loop. In
+ contrast, eXene maintains each window and graphical object in a
+ separate thread that has the ability to update itself.
+
+Package: libckit-smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj (= ${binary:Version})
+Description: SML library for parsing and type-checking C programs
+ ckit is a C front end written in SML that translates C source code (after
+ preprocessing) into abstract syntax represented as a set of SML datatypes.
+ It also provides facilities for extending the C language with additional
+ syntactic constructs, which can be useful for implementing "C-like"
+ domain-specific languages as well as C dialects.
+
+Package: libmlnlffi-smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj (= ${binary:Version})
+Recommends: ml-nlffigen
+Description: No Longer Foreign Function Interface
+ Allows ML programs to inspect and manipulate C data structures
+ directly. This is implemented through three separate libraries, one
+ that provides a user-code accessible frontend, one that
+ implements this, and another that handles low-level raw memory
+ access.
+
+Package: ml-nlffigen
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, libsmlnj-smlnj (= ${binary:Version}), libckit-smlnj (= ${binary:Version})
+Description: ML generator for C glue code
+ This tool reads in C source code and outputs ML code and a CM
+ description file for use with the ML "No Longer Foreign Function
+ Interface" library. This tool works by separating each top-level C
+ declaration into a new ML source file. For large programs, this
+ puts some strain on the SML Compilation Manager, but this should only
+ marginally increase the program run-time.
+
+Package: libmlrisctools-smlnj
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj (= ${binary:Version})
+Description: Library for generating MLRISC modules
+ The MLRISC system allows an easy way to create a back-end to convert
+ SML into machine code. These tools provide an easy way to generate
+ MLRISC modules from machine descriptions.
+
+Package: nowhere
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, libmlrisctools-smlnj (= ${binary:Version})
+Description: Translates programs from an extended Standard ML to Standard ML
+ This is a source-to-source translation tool that expands case
+ expressions that use conditional patterns. Conditional patterns that
+ use the "where" keyword are converted into SML.
+
+Package: ml-lpt
+Architecture: i386 amd64 powerpc
+Depends: ${misc:Depends}, smlnj (= ${binary:Version})
+Provides: ml-ulex, ml-antlr
+Description: SML/NJ language processing tools
+ Tradition has it that when a new programming language is introduced,
+ new scanner and parser generators are written in that language, and
+ generate code for that language.  Traditional also has it that the
+ new tools are modeled after the old lex and yacc tools, both in terms
+ of the algorithms used, and often the syntax as well.  The language
+ Standard ML is no exception: ml-lex and ml-yacc are the SML
+ incarnations of the old Unix tools.
+ .
+ This package has two new tools, ml-ulex and ml-antlr, that follow
+ tradition in separating scanning from parsing, but break from
+ tradition in their implementation: ml-ulex is based on regular
+ expression derivatives rather than subset-construction, and ml-antlr
+ is based on LL(k) parsing rather than LALR(1) parsing.