Source: pure
Section: devel
Priority: extra
Maintainer: Albert Graef <aggraef@gmail.com>
Build-Depends: debhelper (>= 7.0.50~), autotools-dev, bison, flex, llvm-3.4-dev,
 libgmp-dev, libmpfr-dev, libreadline-dev, emacs24-nox|emacs24|emacs23-nox|emacs23
Standards-Version: 3.9.1
Homepage: http://purelang.bitbucket.org
#Vcs-Git: git://git.debian.org/collab-maint/pure.git
#Vcs-Browser: http://git.debian.org/?p=collab-maint/pure.git;a=summary

Package: pure
Architecture: any
Depends: libpure8 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
Suggests: pure-dev, pure-elisp, pure-docs
Description: Functional programming language based on term rewriting
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This package contains the interpreter frontend. We also recommend installing
 the pure-docs package which contains the online documentation, and the
 pure-elisp package if you'd like to do Pure development using the Emacs text
 editor. To enable some features such as batch compilation you'll also have to
 install the pure-dev package.

Package: libpure8
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Functional programming language based on term rewriting - runtime
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This package contains the Pure runtime and the standard Pure library. It is
 needed for all Pure development.

Package: pure-dev
Architecture: any
Depends: libpure8 (= ${binary:Version}), libgmp-dev, libmpfr-dev, llvm-3.4,
 pkg-config, ${misc:Depends}
Description: Functional programming language based on term rewriting - development files
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This package contains the development files (headers and libraries), which
 are needed for batch compilation of Pure programs and for developing addon
 modules. The batch compiler also requires the LLVM toolchain. Some examples
 distributed with Pure also require this package, so it is a good idea to
 install it anyway.

Package: pure-elisp
Architecture: any
Depends: emacs, pure (= ${binary:Version}), ${misc:Depends}
Description: Functional programming language based on term rewriting - elisp files
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This package contains the Pure Emacs mode.

Package: pure-texmacs
Architecture: all
Depends: texmacs-common, pure (>= ${source:Version}), ${misc:Depends}
Description: Functional programming language based on term rewriting - texmacs plugin
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This package contains the Pure TeXmacs plugin and related files.

# Metapackages to pull in the various Pure-related packages.

Package: pure-base
Architecture: all
Depends: ${misc:Depends}, pure, pure-dev, pure-docs, pure-elisp
Description: Functional programming language based on term rewriting - base
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This is a dependency package which provides the basic parts of the Pure
 system (interpreter, runtime, standard library, development files, Emacs mode
 and the online documentation), i.e., everything that's needed for basic Pure
 development.

Package: pure-util
Architecture: all
Depends: ${misc:Depends}, pure-avahi, pure-doc, pure-gen, pure-ffi,
 pure-readline, pure-sockets, pure-stldict, pure-stllib
Description: Functional programming language based on term rewriting - basic libraries and utilities
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This is a dependency package which provides basic support utilities and
 libraries. At the time of this writing, this comprises the pure-doc and
 pure-gen utilities, as well as the avahi, ffi, readline, sockets and STL
 container interfaces.

# NOTE: The gnumeric-pure package isn't included in pure-math for now due to
# lack of required libspreadsheet development files. This should supposedly
# be fixed in newer versions (>= 1.12.16) of the Debian Gnumeric package, cf.
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=723903, but the version
# available in 14.04 LTS is 1.12.9 which is too old. So, for the time being
# users who need this package will have to build it from source.

Package: pure-math
Architecture: all
Depends: ${misc:Depends}, pure-glpk, pure-gplot, pure-gsl, pure-mpfr,
 pure-octave, pure-rational, pure-reduce, pure-texmacs
Description: Functional programming language based on term rewriting - scientific programming
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This is a dependency package which provides the interfaces to various 3rd
 party mathematical software (GLPK, GSL, MPFR, Octave, Gnuplot). It also
 includes the Pure TeXmacs plugin and Jiri Spitz' Pure port of Rob Hubbard's
 rational number library.

Package: pure-web
Architecture: all
Depends: ${misc:Depends}, pure-csv, pure-fastcgi, pure-odbc, pure-sql3,
 pure-xml
Description: Functional programming language based on term rewriting - database and web programming
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This is a dependency package which provides the interfaces for database and
 web programming (CSV, ODBC, SQLite3, FastCGI, XML).

Package: pure-graphics
Architecture: all
Depends: ${misc:Depends}, pure-g2, pure-gl, pure-gtk, pure-tk
Description: Functional programming language based on term rewriting - GUI and graphics programming
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This is a dependency package which provides the interfaces for GUI and
 graphics programming (G2, OpenGL, GTK+, Tcl/Tk).

Package: pure-multimedia
Architecture: all
Depends: ${misc:Depends}, faust2pd, faust2pd-extra, pd-faust, pd-pure,
 pure-audio, pure-liblo, pure-lilv, pure-lv2, pure-midi, pure-faust
Description: Functional programming language based on term rewriting - multimedia programming
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This is a dependency package which provides Pure's multimedia library, which
 covers the audio, LV2, OSC and MIDI interfaces, as well as utilities and
 libraries for interfacing with Faust and Pd (Pure Data).

Package: pure-complete
Architecture: all
Depends: ${misc:Depends}, pure-base, pure-util, pure-math, pure-web,
 pure-graphics, pure-multimedia
Description: Functional programming language based on term rewriting - the full environment
 Pure is a modern-style functional programming language based on term
 rewriting. It offers equational definitions with pattern matching, full
 symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation,
 lexical closures, built-in list and matrix support and an easy-to-use C
 interface. The interpreter uses LLVM as a backend to JIT-compile Pure
 programs to fast native code.
 .
 This is a dependency package which provides the complete Pure programming
 environment including all available addon modules.
