Personal tools

HSFFIG

From HaskellWiki

(Difference between revisions)
Jump to: navigation, search
(Downloading: put correct downloading information.)
(Building from source: clarified on modern way of building)
Line 15: Line 15:
   
 
=== Building from source ===
 
=== Building from source ===
  +
  +
<small>This is a pre-cabal-install way to build from source. See the [[#Downloading | Downloading]] section</small>
   
 
'''Hsffig''' has been released as a [http://www.haskell.org/cabal Cabalized] package. The distribution tarball file contains a minimal version of '''Cabal''' setup program, so it is not necessary to have '''Cabal''' installed in order to install '''hsffig'''. Even more, it is advised to use the '''Cabal''' setup program (further referred to as ''cabal-setup'') as it was slightly tailored to the details of '''hsffig''' installation.
 
'''Hsffig''' has been released as a [http://www.haskell.org/cabal Cabalized] package. The distribution tarball file contains a minimal version of '''Cabal''' setup program, so it is not necessary to have '''Cabal''' installed in order to install '''hsffig'''. Even more, it is advised to use the '''Cabal''' setup program (further referred to as ''cabal-setup'') as it was slightly tailored to the details of '''hsffig''' installation.
Line 24: Line 26:
   
 
At this point, '''hsffig''' is ready to use.
 
At this point, '''hsffig''' is ready to use.
  +
 
==See also==
 
==See also==
 
Please see [[HSFFIG/Tutorial]] for how to use the program. There are other [[HSFFIG/Examples | examples]] and a separate [[HSFFIG/Discussion | discussion page]]. Finally, there is a page describing [[/Linkage optimization |linkage optimization]]
 
Please see [[HSFFIG/Tutorial]] for how to use the program. There are other [[HSFFIG/Examples | examples]] and a separate [[HSFFIG/Discussion | discussion page]]. Finally, there is a page describing [[/Linkage optimization |linkage optimization]]

Revision as of 19:12, 4 June 2009

Contents

1 Purpose

Hsffig is a tool to convert a C header file (.h) into Haskell code containing FFI import statements for all entities whose declarations are found in the header file. Current release version of hsffig is 1.0 (release date 07/30/2005).

2 Getting HSFFIG

2.1 Downloading

Hsffig has been released on Hackage under the name HSFFIG. Also, the working repository is available:

darcs get http://code.haskell.org/hsffig

When downloading from the working repository, run make first, then cabal install.

2.2 Building from source

This is a pre-cabal-install way to build from source. See the Downloading section

Hsffig has been released as a Cabalized package. The distribution tarball file contains a minimal version of Cabal setup program, so it is not necessary to have Cabal installed in order to install hsffig. Even more, it is advised to use the Cabal setup program (further referred to as cabal-setup) as it was slightly tailored to the details of hsffig installation.

  1. After unpacking the tarball, go to the root directory of the distibution and run make. This builds the cabal-setup executable necessary for proper package build and installation.
  2. Run ./cabal-setup configure. Alex is required to compile hsffig, so it is necessary to provide path to Alex executable (the --with-alex= option of ./cabal-setup configure). This creates the package build configuration file.
  3. Run ./cabal-setup build. This builds the hsffig library, and all executables.
  4. Run ./cabal-setup install. This installs the library and the executables, and registers the package with GHC.

At this point, hsffig is ready to use.

3 See also

Please see HSFFIG/Tutorial for how to use the program. There are other examples and a separate discussion page. Finally, there is a page describing linkage optimization