haskell-posit

Haskell bindings for the SoftPosit C library 🧮 (WIP)

posit.cabal (6633B)

  1 -- This file has been generated from package.yaml by hpack version 0.18.1.
  2 --
  3 -- see: https://github.com/sol/hpack
  4 
  5 name:           posit
  6 version:        0.0.1.0
  7 description:    Please see the README on GitHub at <https://github.com/GarkGarcia/haskell-posit#readme>
  8 synopsis:       Haskell bindings for the SoftPosit C library.
  9 homepage:       https://github.com/GarkGarcia/haskell-posit#readme
 10 bug-reports:    https://github.com/GarkGarcia/haskell-posit/issues
 11 category:       math
 12 author:         Gark Garcia
 13 maintainer:     gark.garcia@protonmail.com
 14 copyright:      2020 Gark Garcia
 15 license:        GPL-3
 16 license-file:   LICENSE
 17 build-type:     Simple
 18 cabal-version:  >= 1.10
 19 
 20 extra-source-files:
 21     README.md
 22     src/lib.c
 23 
 24 source-repository head
 25   type: git
 26   location: https://github.com/GarkGarcia/haskell-posit
 27 
 28 library
 29   hs-source-dirs:
 30       src
 31   build-depends:
 32       base >= 4.7 && < 5
 33   exposed-modules:
 34       Numeric.Posit
 35   ghc-options:
 36       -Wall -pgmlgcc
 37   include-dirs:
 38       ./src ./SoftPosit/build/Linux-x86_64-GCC ./SoftPosit/source/include ./SoftPosit/source/8086-SSE
 39   c-sources: 
 40       src/lib.c
 41     , SoftPosit/source/c_convertDecToPosit8.c
 42     , SoftPosit/source/c_convertDecToPosit16.c
 43     , SoftPosit/source/c_convertDecToPosit32.c
 44     , SoftPosit/source/c_convertDecToPositX1.c
 45     , SoftPosit/source/c_convertPosit8ToDec.c
 46     , SoftPosit/source/c_convertPosit16ToDec.c
 47     , SoftPosit/source/c_convertPosit32ToDec.c
 48     , SoftPosit/source/c_convertPositX1ToDec.c
 49     , SoftPosit/source/c_convertQuire8ToPosit8.c
 50     , SoftPosit/source/c_convertQuire16ToPosit16.c
 51     , SoftPosit/source/c_convertQuire32ToPosit32.c
 52     , SoftPosit/source/c_convertQuireX2ToPositX2.c
 53     , SoftPosit/source/c_int.c
 54     , SoftPosit/source/i32_to_p8.c
 55     , SoftPosit/source/i32_to_p16.c
 56     , SoftPosit/source/i32_to_p32.c
 57     , SoftPosit/source/i32_to_pX1.c
 58     , SoftPosit/source/i32_to_pX2.c
 59     , SoftPosit/source/i64_to_p8.c
 60     , SoftPosit/source/i64_to_p16.c
 61     , SoftPosit/source/i64_to_p32.c
 62     , SoftPosit/source/i64_to_pX2.c
 63     , SoftPosit/source/p8_add.c
 64     , SoftPosit/source/p8_div.c
 65     , SoftPosit/source/p8_eq.c
 66     , SoftPosit/source/p8_le.c
 67     , SoftPosit/source/p8_lt.c
 68     , SoftPosit/source/p8_mul.c
 69     , SoftPosit/source/p8_mulAdd.c
 70     , SoftPosit/source/p8_roundToInt.c
 71     , SoftPosit/source/p8_sqrt.c
 72     , SoftPosit/source/p8_sub.c
 73     , SoftPosit/source/p8_to_i32.c
 74     , SoftPosit/source/p8_to_i64.c
 75     , SoftPosit/source/p8_to_p16.c
 76     , SoftPosit/source/p8_to_p32.c
 77     , SoftPosit/source/p8_to_pX1.c
 78     , SoftPosit/source/p8_to_pX2.c
 79     , SoftPosit/source/p8_to_ui32.c
 80     , SoftPosit/source/p8_to_ui64.c
 81     , SoftPosit/source/p16_add.c
 82     , SoftPosit/source/p16_div.c
 83     , SoftPosit/source/p16_eq.c
 84     , SoftPosit/source/p16_le.c
 85     , SoftPosit/source/p16_lt.c
 86     , SoftPosit/source/p16_mul.c
 87     , SoftPosit/source/p16_mulAdd.c
 88     , SoftPosit/source/p16_roundToInt.c
 89     , SoftPosit/source/p16_sqrt.c
 90     , SoftPosit/source/p16_sub.c
 91     , SoftPosit/source/p16_to_i32.c
 92     , SoftPosit/source/p16_to_i64.c
 93     , SoftPosit/source/p16_to_p8.c
 94     , SoftPosit/source/p16_to_p32.c
 95     , SoftPosit/source/p16_to_pX1.c
 96     , SoftPosit/source/p16_to_pX2.c
 97     , SoftPosit/source/p16_to_ui32.c
 98     , SoftPosit/source/p16_to_ui64.c
 99     , SoftPosit/source/p32_add.c
100     , SoftPosit/source/p32_div.c
101     , SoftPosit/source/p32_eq.c
102     , SoftPosit/source/p32_le.c
103     , SoftPosit/source/p32_lt.c
104     , SoftPosit/source/p32_mul.c
105     , SoftPosit/source/p32_mulAdd.c
106     , SoftPosit/source/p32_roundToInt.c
107     , SoftPosit/source/p32_sqrt.c
108     , SoftPosit/source/p32_sub.c
109     , SoftPosit/source/p32_to_i32.c
110     , SoftPosit/source/p32_to_i64.c
111     , SoftPosit/source/p32_to_p8.c
112     , SoftPosit/source/p32_to_p16.c
113     , SoftPosit/source/p32_to_pX1.c
114     , SoftPosit/source/p32_to_pX2.c
115     , SoftPosit/source/p32_to_ui32.c
116     , SoftPosit/source/p32_to_ui64.c
117     , SoftPosit/source/pX1_add.c
118     , SoftPosit/source/pX1_div.c
119     , SoftPosit/source/pX1_mul.c
120     , SoftPosit/source/pX1_mulAdd.c
121     , SoftPosit/source/pX1_roundToInt.c
122     , SoftPosit/source/pX1_sub.c
123     , SoftPosit/source/pX1_to_i32.c
124     , SoftPosit/source/pX1_to_i64.c
125     , SoftPosit/source/pX1_to_p8.c
126     , SoftPosit/source/pX1_to_p16.c
127     , SoftPosit/source/pX1_to_p32.c
128     , SoftPosit/source/pX1_to_pX1.c
129     , SoftPosit/source/pX1_to_pX2.c
130     , SoftPosit/source/pX1_to_ui32.c
131     , SoftPosit/source/pX1_to_ui64.c
132     , SoftPosit/source/pX2_add.c
133     , SoftPosit/source/pX2_div.c
134     , SoftPosit/source/pX2_eq.c
135     , SoftPosit/source/pX2_le.c
136     , SoftPosit/source/pX2_lt.c
137     , SoftPosit/source/pX2_mul.c
138     , SoftPosit/source/pX2_mulAdd.c
139     , SoftPosit/source/pX2_roundToInt.c
140     , SoftPosit/source/pX2_sqrt.c
141     , SoftPosit/source/pX2_sub.c
142     , SoftPosit/source/pX2_to_pX1.c
143     , SoftPosit/source/quire8_fdp_add.c
144     , SoftPosit/source/quire8_fdp_sub.c
145     , SoftPosit/source/quire16_fdp_add.c
146     , SoftPosit/source/quire16_fdp_sub.c
147     , SoftPosit/source/quire32_fdp_add.c
148     , SoftPosit/source/quire32_fdp_sub.c
149     , SoftPosit/source/quire_helper.c
150     , SoftPosit/source/s_addMagsP8.c
151     , SoftPosit/source/s_addMagsP16.c
152     , SoftPosit/source/s_addMagsP32.c
153     , SoftPosit/source/s_addMagsPX1.c
154     , SoftPosit/source/s_addMagsPX2.c
155     , SoftPosit/source/s_approxRecipSqrt_1Ks.c
156     , SoftPosit/source/s_mulAddP8.c
157     , SoftPosit/source/s_mulAddP16.c
158     , SoftPosit/source/s_mulAddP32.c
159     , SoftPosit/source/s_mulAddPX1.c
160     , SoftPosit/source/s_mulAddPX2.c
161     , SoftPosit/source/s_subMagsP8.c
162     , SoftPosit/source/s_subMagsP16.c
163     , SoftPosit/source/s_subMagsP32.c
164     , SoftPosit/source/s_subMagsPX1.c
165     , SoftPosit/source/s_subMagsPX2.c
166     , SoftPosit/source/ui32_to_p8.c
167     , SoftPosit/source/ui32_to_p16.c
168     , SoftPosit/source/ui32_to_p32.c
169     , SoftPosit/source/ui32_to_pX2.c
170     , SoftPosit/source/ui64_to_p8.c
171     , SoftPosit/source/ui64_to_p16.c
172     , SoftPosit/source/ui64_to_p32.c
173     , SoftPosit/source/ui64_to_pX1.c
174     , SoftPosit/source/ui64_to_pX2.c
175     , SoftPosit/source/8086-SSE/specialize.h
176     , SoftPosit/source/include/internals.h
177     , SoftPosit/source/include/primitives.h
178     , SoftPosit/source/include/softposit.h
179     , SoftPosit/source/include/softposit_cpp.h
180     , SoftPosit/source/include/softposit_types.h
181     , SoftPosit/build/Linux-x86_64-GCC/platform.h
182   default-language: Haskell2010
183 
184 test-suite posit-test
185   type: exitcode-stdio-1.0
186   main-is: Spec.hs
187   hs-source-dirs:
188       test
189   ghc-options: -threaded -rtsopts -with-rtsopts=-N
190   build-depends:
191       base >= 4.7 && < 5
192     , posit
193   default-language: Haskell2010