forked from haskell/c2hs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathc2hs.cabal
163 lines (151 loc) · 6.29 KB
/
c2hs.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
Name: c2hs
Version: 0.18.2
License: GPL-2
License-File: COPYING
Copyright: Copyright (c) 1999-2007 Manuel M T Chakravarty
2005-2013 Duncan Coutts
2008 Benedikt Huber
Author: Manuel M T Chakravarty
Stability: Stable
Homepage: https://github.com/haskell/c2hs
Bug-Reports: https://github.com/haskell/c2hs/issues
Synopsis: C->Haskell FFI tool that gives some cross-language type safety
Description: C->Haskell assists in the development of Haskell bindings to C
libraries. It extracts interface information from C header
files and generates Haskell code with foreign imports and
marshaling. Unlike writing foreign imports by hand (or using
hsc2hs), this ensures that C functions are imported with the
correct Haskell types.
Category: Development
Tested-With: GHC==6.12.3, GHC==7.0.4, GHC==7.6.1, GHC==7.6.3
Cabal-Version: >= 1.8
Build-Type: Simple
--TODO: Cabal should allow 'Data-Files' in the executable stanza
Data-Files: C2HS.hs
Extra-Source-Files:
src/C2HS/config.h
AUTHORS INSTALL README ChangeLog ChangeLog.old
doc/c2hs.xml doc/c2hs.css doc/man1/c2hs.1 doc/Makefile
tests/system/calls/*.chs tests/system/calls/*.h
tests/system/cpp/*.chs
tests/system/enums/*.chs tests/system/enums/*.h tests/system/enums/*.c
tests/system/marsh/*.chs tests/system/marsh/*.h
tests/system/pointer/*.chs tests/system/pointer/*.h tests/system/pointer/*.c
tests/system/simple/*.chs tests/system/simple/*.h tests/system/simple/*.c
tests/system/sizeof/*.chs tests/system/sizeof/*.h tests/system/sizeof/*.c
tests/system/structs/*.chs tests/system/structs/*.h tests/system/structs/*.c
tests/system/Makefile
tests/bugs/call_capital/*.chs
tests/bugs/call_capital/*.h
tests/bugs/call_capital/*.c
tests/bugs/issue-7/*.chs tests/bugs/issue-7/*.h
tests/bugs/issue-10/*.chs tests/bugs/issue-10/*.h tests/bugs/issue-10/*.c
tests/bugs/issue-16/*.chs tests/bugs/issue-16/*.h tests/bugs/issue-16/*.c
tests/bugs/issue-19/*.chs tests/bugs/issue-19/*.h tests/bugs/issue-19/*.c
tests/bugs/issue-22/*.chs tests/bugs/issue-22/*.h tests/bugs/issue-22/*.c
tests/bugs/issue-23/*.chs tests/bugs/issue-23/*.h tests/bugs/issue-23/*.c
tests/bugs/issue-29/*.chs tests/bugs/issue-29/*.h
tests/bugs/issue-30/*.chs tests/bugs/issue-30/*.h tests/bugs/issue-30/*.c
tests/bugs/issue-31/*.chs tests/bugs/issue-31/*.h tests/bugs/issue-31/*.c
tests/bugs/issue-32/*.chs tests/bugs/issue-32/*.h tests/bugs/issue-32/*.c
tests/bugs/issue-37/*.chs tests/bugs/issue-37/*.h tests/bugs/issue-37/*.c
tests/bugs/issue-38/*.chs tests/bugs/issue-38/*.h tests/bugs/issue-38/*.c
tests/bugs/issue-43/*.chs tests/bugs/issue-43/*.h tests/bugs/issue-43/*.c
tests/bugs/issue-44/*.chs tests/bugs/issue-44/*.h tests/bugs/issue-44/*.c
tests/bugs/issue-45/*.chs tests/bugs/issue-45/*.h tests/bugs/issue-45/*.c
tests/bugs/issue-47/*.chs tests/bugs/issue-47/*.h tests/bugs/issue-47/*.c
tests/bugs/issue-51/*.chs tests/bugs/issue-51/*.h tests/bugs/issue-51/*.c
tests/bugs/issue-54/*.chs tests/bugs/issue-54/*.h tests/bugs/issue-54/*.c
tests/bugs/issue-60/*.chs tests/bugs/issue-60/*.h tests/bugs/issue-60/*.c
tests/bugs/issue-62/*.chs tests/bugs/issue-62/*.h tests/bugs/issue-62/*.c
tests/bugs/issue-69/*.chs tests/bugs/issue-69/*.h tests/bugs/issue-69/*.c
tests/bugs/issue-75/*.chs tests/bugs/issue-75/*.h tests/bugs/issue-75/*.c
tests/bugs/issue-79/*.chs tests/bugs/issue-79/*.h tests/bugs/issue-79/*.c
tests/bugs/issue-80/*.chs tests/bugs/issue-80/*.h tests/bugs/issue-80/*.c
tests/bugs/issue-93/*.chs tests/bugs/issue-93/*.h tests/bugs/issue-93/*.c
tests/bugs/issue-95/*.chs tests/bugs/issue-95/*.h tests/bugs/issue-95/*.c
tests/bugs/issue-96/*.chs tests/bugs/issue-96/*.h tests/bugs/issue-96/*.c
tests/bugs/issue-107/*.chs
source-repository head
type: git
location: git://github.com/haskell/c2hs.git
flag base3
Executable c2hs
Build-Depends: base >= 2 && < 5,
language-c >= 0.4.5 && < 0.5,
filepath,
dlist
if flag(base3)
Build-Depends: base >= 3, process, directory, array, containers, pretty
else
Build-Depends: base < 3
hs-source-dirs: src
main-is: Main.hs
other-modules:
C2HS.C
C2HS.C.Attrs
C2HS.C.Builtin
C2HS.C.Info
C2HS.C.Names
C2HS.C.Trav
C2HS.CHS
C2HS.CHS.Lexer
C2HS.Gen.Monad
C2HS.Gen.Bind
C2HS.Gen.Header
C2HS.State
C2HS.Switches
C2HS.Config
C2HS.Version
Control.StateBase
Control.State
Control.StateTrans
Data.Attributes
Data.Errors
Data.NameSpaces
System.CIO
Text.Lexers
extensions: ForeignFunctionInterface
c-sources: src/C2HS/config.c
--TODO: eliminate the need to suppress these warnings:
ghc-options: -Wall -fno-warn-incomplete-patterns -fwarn-tabs
Test-Suite test-bugs
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: test-bugs.hs
build-tools: c2hs
build-depends: base,
filepath,
test-framework,
test-framework-hunit,
HUnit,
shelly >= 1.0,
text,
transformers
Test-Suite test-system
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: test-system.hs
build-tools: c2hs
build-depends: base,
test-framework,
test-framework-hunit,
HUnit,
shelly >= 1.0,
text,
transformers
Flag travis
description: Enable regression suite build for Travis-CI.
default: False
Executable regression-suite
main-is: regression-suite.hs
hs-source-dirs: tests
if flag(travis)
build-depends: base,
filepath,
shelly >= 1.0,
text,
yaml >= 0.8
else
buildable: False