-
Notifications
You must be signed in to change notification settings - Fork 6
/
unicode-data-scripts.cabal
137 lines (125 loc) · 4.04 KB
/
unicode-data-scripts.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
cabal-version: 2.2
name: unicode-data-scripts
version: 0.4.0
synopsis: Unicode characters scripts
description:
@unicode-data-scripts@ provides Haskell APIs to access the Unicode
character <https://www.unicode.org/reports/tr24/ scripts> from the
<https://www.unicode.org/ucd/ Unicode character database> (UCD).
.
The Haskell data structures are generated programmatically from the UCD files.
The latest Unicode version supported by this library is
@<https://www.unicode.org/versions/Unicode15.1.0/ 15.1.0>@.
homepage: http://github.com/composewell/unicode-data
bug-reports: https://github.com/composewell/unicode-data/issues
license: Apache-2.0
license-file: LICENSE
author: Composewell Technologies and Contributors
maintainer: [email protected]
copyright: 2022 Composewell Technologies and Contributors
category: Data,Text,Unicode
stability: Experimental
build-type: Simple
tested-with: GHC==8.0.2
, GHC==8.2.2
, GHC==8.4.4
, GHC==8.6.5
, GHC==8.8.4
, GHC==8.10.7
, GHC==9.0.2
, GHC==9.2.8
, GHC==9.4.8
, GHC==9.6.5
, GHC==9.8.2
, GHC==9.10.1
extra-doc-files:
Changelog.md
README.md
source-repository head
type: git
location: https://github.com/composewell/unicode-data
common default-extensions
default-extensions:
BangPatterns
DeriveGeneric
MagicHash
RecordWildCards
ScopedTypeVariables
TupleSections
FlexibleContexts
LambdaCase
-- Experimental, may lead to issues
UnboxedTuples
common compile-options
ghc-options: -Wall
-fwarn-identities
-fwarn-incomplete-record-updates
-fwarn-incomplete-uni-patterns
-fwarn-tabs
default-language: Haskell2010
flag dev-has-icu
description: Use ICU for test and benchmark
manual: True
default: False
library
import: default-extensions, compile-options
exposed-modules:
-- The module structure is derived from
-- https://www.unicode.org/reports/tr44/#Property_Index_Table
Unicode.Char.General.Scripts
-- Internal files
Unicode.Internal.Bits.Scripts
-- Generated files
-- This module structure is largely based on the UCD file names from which
-- the properties are generated.
Unicode.Internal.Char.Scripts
Unicode.Internal.Char.ScriptExtensions
Unicode.Internal.Char.Scripts.Version
hs-source-dirs: lib
build-depends:
base >= 4.7 && < 4.22
-- Support for raw string literals unpacking is included in base ≥ 4.15
if impl(ghc < 9.0.0)
build-depends:
ghc-prim >= 0.3.1 && < 1.0
test-suite test
import: default-extensions, compile-options
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs:
test
other-modules:
Unicode.Char.General.ScriptsSpec
build-depends:
base >= 4.7 && < 4.22
, hspec >= 2.0 && < 2.12
, unicode-data-scripts
if flag(dev-has-icu)
other-modules:
ICU.ScriptsSpec
build-depends:
icu
cpp-options: -DHAS_ICU
benchmark bench
import: default-extensions, compile-options
type: exitcode-stdio-1.0
hs-source-dirs: bench
main-is: Main.hs
build-depends:
base >= 4.7 && < 4.22,
deepseq >= 1.1 && < 1.6,
tasty-bench >= 0.2.5 && < 0.5,
tasty >= 1.4.1 && < 1.6,
unicode-data-scripts
if impl(ghc < 9.0)
-- Required for noinline
build-depends: ghc-prim
-- [NOTE] Recommendation of tasty-bench to reduce garbage collection noisiness
ghc-options: -O2 -fdicts-strict -rtsopts -with-rtsopts=-A32m
-- [NOTE] Recommendation of tasty-bench for comparison against baseline
if impl(ghc >= 8.6)
ghc-options: -fproc-alignment=64
if flag(dev-has-icu)
build-depends:
icu
cpp-options: -DHAS_ICU