| Cabal-1.2.3.0: A framework for packaging Haskell software | Source code | Contents | Index

Distribution.Make |

Portability | portable
Stability | alpha
Maintainer | Isaac Jones <ijones@syntaxpolice.org>

Description
Uses the parsed command-line from Distribution.Setup in order to build Haskell tools using a backend build system based on make. Obviously we assume that there is a configure script, and that after the ConfigCmd has been run, there is a Makefile. Further assumptions:

ConfigCmd
  We assume the configure script accepts `--with-hc`, `--with-hc-pkg`, `--prefix`, `--bindir`, `--libdir`, `--libexecdir`, `--datadir`.
BuildCmd
  We assume that the default Makefile target will build everything.
InstallCmd
  We assume there is an `install` target. Note that we assume that this does *not* register the package!
CopyCmd
  We assume there is a `copy` target, and a variable `$(destdir)`. The `copy` target should probably just invoke `make install` recursively (e.g. `$(MAKE) install prefix=$(destdir)/$(prefix) bindir=$(destdir)/$(bindir)`. The reason we can't invoke `make install` directly here is that we don't know the value of `$(prefix)`.
SDistCmd
  We assume there is a `dist` target.
RegisterCmd
  We assume there is a `register` target and a variable `$(user)`.
UnregisterCmd
  We assume there is an `unregister` target.
HaddockCmd
  We assume there is a `docs` or `doc` target.
ProgramaticaCmd
  We assume there is a `programatica` target.

Synopsis

module Distribution.Package

data License

= GPL
| LGPL
| BSD3
| BSD4
| PublicDomain
| AllRightsReserved
| OtherLicense

Version (Version, versionBranch, versionTags)
defaultMain :: IO ()
defaultMainArgs :: [String] -> IO ()
defaultMainNoRead :: PackageDescription -> IO ()

Documentation
module Distribution.Package

data License | Source

This datatype indicates the license under which your package is released. It is also wise to add your license to each source file using the license-file field. The `AllRightsReserved` constructor is not actually a license, but states that you are not giving anyone else a license to use or distribute your work. The comments below are general guidelines. Please read the licenses themselves and consult a lawyer if you are unsure of your rights to release the software.
Constructors

GPL | GNU Public License. Source code must accompany alterations.
LGPL | Lesser GPL, Less restrictive than GPL, useful for libraries.
BSD3 | 3-clause BSD license, newer, no advertising clause. Very free license.
BSD4 | 4-clause BSD license, older, with advertising clause.
PublicDomain | Holder makes no claim to ownership, least restrictive license.
AllRightsReserved | No rights are granted to others. Undistributable. Most restrictive.
OtherLicense | Some other license.

Instances

Eq License
Read License
Show License

Version (Version, versionBranch, versionTags)

defaultMain :: IO () | Source

defaultMainArgs :: [String] -> IO () | Source

defaultMainNoRead :: PackageDescription -> IO () | Source

Produced by Haddock version 0.8