-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathinline-python.cabal
More file actions
173 lines (158 loc) · 4.5 KB
/
Copy pathinline-python.cabal
File metadata and controls
173 lines (158 loc) · 4.5 KB
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
164
165
166
167
168
169
170
171
172
173
Cabal-Version: 3.0
Build-Type: Custom
Name: inline-python
Version: 0.2.1.0
Synopsis: Python interpreter embedded into haskell.
Description:
This package embeds python interpreter into haskell program and
allows to write python snippets as quasiquotes. Values could be
easily transferred between python and haskell. It's possible to
call haskell from python as well.
License: BSD-3-Clause
License-File: LICENSE
Author: Aleksey Khudyakov <alexey.skladnoy@gmail.com>
Maintainer: Aleksey Khudyakov <alexey.skladnoy@gmail.com>
Homepage: https://github.com/Shimuuar/inline-python
Bug-reports: https://github.com/Shimuuar/inline-python/issues
Category: FFI
extra-doc-files:
ChangeLog.md
extra-source-files:
include/inline-python.h
py/bound-vars.py
Tested-With:
GHC == 9.4.8
GHC == 9.6.7
GHC == 9.8.4
GHC == 9.10.2
GHC == 9.12.2
GHC == 9.14.1
custom-setup
setup-depends: base >=4.15 && <5
, Cabal >=3.0 && <4
, Cabal-syntax >=3.6 && <4
, process >=1.6 && <2
flag python3-config
Description: Use python3-config instead of pkg-config
Manual: True
Default: False
source-repository head
type: git
location: http://github.com/Shimuuar/inline-python
common language
Ghc-options: -Wall
Default-Language: GHC2021
Default-Extensions:
NoPolyKinds
--
DeriveAnyClass
DerivingVia
PatternSynonyms
ViewPatterns
LambdaCase
MultiWayIf
--
NoFieldSelectors
DuplicateRecordFields
OverloadedRecordDot
----------------------------------------------------------------
Library
import: language
Build-Depends: base >=4.15 && <5
, primitive >=0.6.2
, vector >=0.13.2
, containers >=0.5
, process
, transformers >=0.4
, inline-c >=0.9.1
, stm >=2.4
, template-haskell -any
, text >=2
, bytestring >=0.11.2
, exceptions >=0.10
, vector >=0.13.2
hs-source-dirs: src
include-dirs: include
c-sources: cbits/python.c
cc-options: -g -Wall
-- Else we use python3-config in Setup.hs
if !flag(python3-config)
pkgconfig-depends: python3-embed >= 3.10
--
Exposed-modules:
Python.Inline
Python.Inline.Literal
Python.Inline.QQ
Python.Inline.Eval
Python.Inline.Types
Python.Inline.Async
Other-modules:
Python.Internal.CAPI
Python.Internal.Eval
Python.Internal.EvalQQ
Python.Internal.Program
Python.Internal.Types
Python.Internal.Util
common tests
Default-Extensions:
QuasiQuotes
hs-source-dirs: test
build-depends: base
, inline-python
, tasty >=1.2
, tasty-hunit >=0.10
, tasty-quickcheck >=0.10
, stm
, quickcheck-instances >=0.3.33
, exceptions
, containers
, vector
, bytestring
, text
-- Running tests using several threads does very good job at finding threading
-- bugs. Especially deadlocks
test-suite inline-python-tests
import: language, tests
type: exitcode-stdio-1.0
Ghc-options: -threaded -rtsopts -with-rtsopts=-N2
main-is: exe/main.hs
Other-modules:
TST.Run
TST.ToPy
TST.FromPy
TST.Callbacks
TST.Roundtrip
TST.Util
test-suite inline-python-tests1
import: language, tests
type: exitcode-stdio-1.0
Ghc-options: -rtsopts
main-is: exe/main.hs
Other-modules:
TST.Run
TST.ToPy
TST.FromPy
TST.Callbacks
TST.Roundtrip
TST.Util
benchmark pysmall
import: language
type: exitcode-stdio-1.0
Ghc-options: -threaded
main-is: Main.hs
hs-source-dirs: bench
build-depends:
base >= 2 && < 5
, inline-python
, tasty
, tasty-bench >= 0.2.1
benchmark pysmall1
import: language
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: bench
build-depends:
base >= 2 && < 5
, inline-python
, tasty
, tasty-bench >= 0.2.1