Difference between revisions of "FFI imports packaging utility"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
== Abstract == |
== Abstract == |
||
− | The Haskell Cabal [[#1|[1]]] is a framework which defines a common interface for authors to more easily build their applications in a portable way. The Haskell Foreign Functions Import |
+ | The Haskell Cabal [[#1|[1]]] is a framework which defines a common interface for authors to more easily build their applications in a portable way. The Haskell Foreign Functions Import Generator ('''hsffig''') [[#3|[3]]] is a tool to convert a '''C''' header file (.h) into Haskell code containing FFI [[#2|[2]]] import statements for all entities whose declarations are found in the header file. The FFI Packaging Utility ('''ffipkg''') is a tool that integrates the functionality of '''hsffig''' with the Cabal framework allowing for building and installation of packages entirely consisting of foreign functions imports. |
== Benefits of Packaging FFI Imports == |
== Benefits of Packaging FFI Imports == |
Revision as of 04:12, 1 February 2006
Abstract
The Haskell Cabal [1] is a framework which defines a common interface for authors to more easily build their applications in a portable way. The Haskell Foreign Functions Import Generator (hsffig) [3] is a tool to convert a C header file (.h) into Haskell code containing FFI [2] import statements for all entities whose declarations are found in the header file. The FFI Packaging Utility (ffipkg) is a tool that integrates the functionality of hsffig with the Cabal framework allowing for building and installation of packages entirely consisting of foreign functions imports.
Benefits of Packaging FFI Imports
Purpose
Command Line Options
Synopsis
Package Naming and Versioning
Location of Libraries and Include Files
External Programs
Compatibility
Other Options
Creating a FFI Import Package
Preparatory Steps
Creating Haskell Sources, Makefile, Cabal File
Configuring a Package
Building a Package
Package Installation
Examples
Hello, World
Berkeley DB Binding
X11 Transport Protocol
References
[5] Berkeley DB