on master help sign in
Added stacks
b01f45aiko
.travis.yml+29−11
@@ -10,17 +10,35 @@ matrix:
10 include:
10 include:
11 - env: CABALVER="2.4" GHCVER="8.6.5" STACKVER="15.3" STYLISH=YES
11 - env: CABALVER="2.4" GHCVER="8.6.5" STACKVER="15.3" STYLISH=YES
12 addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.5,hscolour], sources: [hvr-ghc]}}
12 addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.5,hscolour], sources: [hvr-ghc]}}
13+ - env: CABALVER="2.4" GHCVER="8.2.2" TESTS="lib_doc doc"
14+ compiler: ": #GHC 8.2.2"
15+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.2.2,cppcheck,hscolour], sources: [hvr-ghc]}}
16+ - env: CABALVER="2.4" GHCVER="8.2.2" TESTS="test_js"
17+ compiler: ": #GHC 8.2.2"
18+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.2.2,cppcheck,hscolour], sources: [hvr-ghc]}}
19+ - env: CABALVER="2.4" GHCVER="8.2.2" TESTS="test_c"
20+ compiler: ": #GHC 8.2.2"
21+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.2.2,cppcheck,hscolour], sources: [hvr-ghc]}}
22+ - env: CABALVER="2.4" GHCVER="8.6.5" TESTS="lib_doc doc"
23+ compiler: ": #GHC 8.6.5"
24+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.5,cppcheck,hscolour], sources: [hvr-ghc]}}
25+ - env: CABALVER="2.4" GHCVER="8.6.5" TESTS="test_js"
26+ compiler: ": #GHC 8.6.5"
27+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.5,cppcheck,hscolour], sources: [hvr-ghc]}}
28+ - env: CABALVER="2.4" GHCVER="8.6.5" TESTS="test_c"
29+ compiler: ": #GHC 8.6.5"
30+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.5,cppcheck,hscolour], sources: [hvr-ghc]}}
13− - env: CABALVER="3.0" GHCVER="8.8.2" TESTS="lib_doc doc"
31+ - env: CABALVER="3.0" GHCVER="8.8.3" TESTS="lib_doc doc"
14− compiler: ": #GHC 8.8.2"
32+ compiler: ": #GHC 8.8.3"
15− addons: {apt: {packages: [cabal-install-3.0,ghc-8.8.2,cppcheck,hscolour,libffi-dev], sources: [hvr-ghc]}}
33+ addons: {apt: {packages: [cabal-install-3.0,ghc-8.8.3,cppcheck,hscolour], sources: [hvr-ghc]}}
16− - env: CABALVER="3.0" GHCVER="8.8.2" TESTS="test_js"
34+ - env: CABALVER="3.0" GHCVER="8.8.3" TESTS="test_js"
17− compiler: ": #GHC 8.8.2"
35+ compiler: ": #GHC 8.8.3"
18− addons: {apt: {packages: [cabal-install-3.0,ghc-8.8.2,cppcheck,hscolour,libffi-dev], sources: [hvr-ghc]}}
36+ addons: {apt: {packages: [cabal-install-3.0,ghc-8.8.3,cppcheck,hscolour], sources: [hvr-ghc]}}
19− - env: CABALVER="3.0" GHCVER="8.8.2" TESTS="test_c"
37+ - env: CABALVER="3.0" GHCVER="8.8.3" TESTS="test_c"
20− compiler: ": #GHC 8.8.2"
38+ compiler: ": #GHC 8.8.3"
21− addons: {apt: {packages: [cabal-install-3.0,ghc-8.8.2,cppcheck,hscolour,libffi-dev], sources: [hvr-ghc]}}
39+ addons: {apt: {packages: [cabal-install-3.0,ghc-8.8.3,cppcheck,hscolour], sources: [hvr-ghc]}}
22− - env: CABALVER="3.0" GHCVER="8.8.2" IDRIS2=YES
40+ - env: CABALVER="3.0" GHCVER="8.8.3" IDRIS2=YES
23− addons: {apt: {packages: [cabal-install-3.0,ghc-8.8.2], sources: [hvr-ghc]}}
41+ addons: {apt: {packages: [cabal-install-3.0,ghc-8.8.3], sources: [hvr-ghc]}}
24 fast-finish: true
42 fast-finish: true
25
43
26cache:
44cache:
INSTALL.md+7−2
@@ -130,7 +130,8 @@ PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig stack build
130## Issue with GHC on Ubuntu/Fedora
130## Issue with GHC on Ubuntu/Fedora
131
131
132There is an upstream issue with GHC on some Ubuntu and Fedora machines.
132There is an upstream issue with GHC on some Ubuntu and Fedora machines.
133−The issue is that for GHC versions greater than 8.4.X linking to libFFI is broken.
133+The issue is that for GHC versions greater than 8.4.X linking to libFFI uses the version of libFFI shipped with GHC, instead of the system version.
134+
134See the following GHC issue page for more information:
135See the following GHC issue page for more information:
135
136
136 <https://gitlab.haskell.org/ghc/ghc/issues/15397>
137 <https://gitlab.haskell.org/ghc/ghc/issues/15397>
@@ -141,4 +142,8 @@ Specifically, one will see an error message along the lines of:
141
142
142> error while loading shared libraries: libffi.so.7: cannot open shared object file: No such file or directory
143> error while loading shared libraries: libffi.so.7: cannot open shared object file: No such file or directory
143
144
144−We have supplied an alternative stack configuration file (`stack-alt.yaml`) that will use a version of GHC prior to the upstream issue being introduced.
145+A workround for this bug is to override the used libffi version (this is what we use on CI):
146+
147+```bash
148+export LD_PRELOAD=/opt/ghc/${GHCVER}/lib/ghc-${GHCVER}/rts/libffi.so.7
149+```
idris.cabal+25−7
@@ -46,12 +46,19 @@ Build-type: Custom
46
46
47Tested-With: GHC == 7.10.3, GHC == 8.0.1
47Tested-With: GHC == 7.10.3, GHC == 8.0.1
48
48
49+-- NOTE: due to https://github.com/haskell/cabal/issues/6125 the use of ** is
50+-- heavily discouraged.
49Data-files: idrisdoc/styles.css
51Data-files: idrisdoc/styles.css
50− jsrts/**/*.js
52+ jsrts/jsbn/*.js
53+ jsrts/*.js
51 jsrts/jsbn/LICENSE
54 jsrts/jsbn/LICENSE
52 rts/Makefile
55 rts/Makefile
53− rts/**/*.c
56+ rts/*.c
57+ rts/seL4/*.c
58+ rts/arduino/*.c
59+ rts/windows/*.c
54− rts/**/*.h
60+ rts/windows/*.h
61+ rts/*.h
55 rts/seL4/CMakeLists.txt
62 rts/seL4/CMakeLists.txt
56 rts/seL4/README.md
63 rts/seL4/README.md
57
64
@@ -64,8 +71,13 @@ Extra-doc-files:
64 RELEASE-CHECKS.md
71 RELEASE-CHECKS.md
65 idris-tutorial.pdf
72 idris-tutorial.pdf
66 man/idris.1
73 man/idris.1
67− samples/**/*.idr
74+ samples/effects/*.idr
75+ samples/misc/*.idr
76+ samples/tutorial/*.idr
77+ samples/ST/*.idr
78+ samples/ST/Graphics/*.idr
79+ samples/ST/NET/*.idr
68− samples/**/*.lidr
80+ samples/misc/*.lidr
69
81
70-- extra-source-files is generated by Setup.hs using `git --ls-files`.
82-- extra-source-files is generated by Setup.hs using `git --ls-files`.
71Extra-source-files:
83Extra-source-files:
@@ -79,8 +91,14 @@ Extra-source-files:
79 win-release.sh
91 win-release.sh
80
92
81 benchmarks/*.pl
93 benchmarks/*.pl
82− benchmarks/**/*.idr
94+ benchmarks/fasta/*.idr
95+ benchmarks/fasta/*.ipkg
96+ benchmarks/pidigits/*.idr
97+ benchmarks/pidigits/*.ipkg
98+ benchmarks/quasigroups/*.idr
99+ benchmarks/quasigroups/*.ipkg
100+ benchmarks/trivial/*.idr
83− benchmarks/**/*.ipkg
101+ benchmarks/trivial/*.ipkg
84 benchmarks/quasigroups/board
102 benchmarks/quasigroups/board
85
103
86 icons/*.png
104 icons/*.png
stack-11.22.yamlnew file+21
@@ -0,0 +1,21 @@
1+#recheck extra-deps next on resolver or cabal file change
2+resolver: lts-11.22
3+
4+extra-deps:
5+- cheapskate-0.1.1.2
6+- megaparsec-7.0.5
7+- Cabal-2.4.1.0
8+- network-3.1.1.1
9+- parser-combinators-1.0.0
10+
11+flags:
12+ idris:
13+ FFI: true
14+ GMP: true
15+
16+ghc-options:
17+ idris: -fwarn-unused-imports -fwarn-unused-binds
18+
19+nix:
20+ enable: false
21+ shell-file: stack-shell.nix
stack-12.26.yamlnew file+20
@@ -0,0 +1,20 @@
1+#recheck extra-deps next on resolver or cabal file change
2+resolver: lts-12.26
3+
4+extra-deps:
5+- cheapskate-0.1.1.2
6+- megaparsec-7.0.5
7+- Cabal-2.4.1.0
8+- network-3.1.1.1
9+
10+flags:
11+ idris:
12+ FFI: true
13+ GMP: true
14+
15+ghc-options:
16+ idris: -fwarn-unused-imports -fwarn-unused-binds
17+
18+nix:
19+ enable: false
20+ shell-file: stack-shell.nix
stack-13.11.yamlnew file+17
@@ -0,0 +1,17 @@
1+#recheck extra-deps next on resolver or cabal file change
2+resolver: lts-13.11
3+
4+extra-deps:
5+- cheapskate-0.1.1.2
6+
7+flags:
8+ idris:
9+ FFI: true
10+ GMP: true
11+
12+ghc-options:
13+ idris: -fwarn-unused-imports -fwarn-unused-binds
14+
15+nix:
16+ enable: false
17+ shell-file: stack-shell.nix
stack-13.19.yamlnew file+17
@@ -0,0 +1,17 @@
1+#recheck extra-deps next on resolver or cabal file change
2+resolver: lts-13.19
3+
4+extra-deps:
5+- cheapskate-0.1.1.2
6+
7+flags:
8+ idris:
9+ FFI: true
10+ GMP: true
11+
12+ghc-options:
13+ idris: -fwarn-unused-imports -fwarn-unused-binds
14+
15+nix:
16+ enable: false
17+ shell-file: stack-shell.nix
stack-14.27.yamlnew file+17
@@ -0,0 +1,17 @@
1+#recheck extra-deps next on resolver or cabal file change
2+resolver: lts-14.27
3+
4+extra-deps:
5+- cheapskate-0.1.1.2
6+
7+flags:
8+ idris:
9+ FFI: true
10+ GMP: true
11+
12+ghc-options:
13+ idris: -fwarn-unused-imports -fwarn-unused-binds
14+
15+nix:
16+ enable: false
17+ shell-file: stack-shell.nix
stack-15.3.yamlnew file+17
@@ -0,0 +1,17 @@
1+#recheck extra-deps next on resolver or cabal file change
2+resolver: lts-15.3
3+
4+extra-deps:
5+- cheapskate-0.1.1.2
6+
7+flags:
8+ idris:
9+ FFI: true
10+ GMP: true
11+
12+ghc-options:
13+ idris: -fwarn-unused-imports -fwarn-unused-binds
14+
15+nix:
16+ enable: false
17+ shell-file: stack-shell.nix
stack-15.4.yamlnew file+17
@@ -0,0 +1,17 @@
1+#recheck extra-deps next on resolver or cabal file change
2+resolver: lts-15.4
3+
4+extra-deps:
5+- cheapskate-0.1.1.2
6+
7+flags:
8+ idris:
9+ FFI: true
10+ GMP: true
11+
12+ghc-options:
13+ idris: -fwarn-unused-imports -fwarn-unused-binds
14+
15+nix:
16+ enable: false
17+ shell-file: stack-shell.nix
stack.yamlmode 100644 → 120000+1−17
@@ -1,17 +0,0 @@
1−#recheck extra-deps next on resolver or cabal file change
2−resolver: lts-15.3
3−
4−extra-deps:
5−- cheapskate-0.1.1.2
6−
7−flags:
8− idris:
9− FFI: true
10− GMP: true
11−
12−ghc-options:
13− idris: -fwarn-unused-imports -fwarn-unused-binds
14−
15−nix:
16− enable: false
17− shell-file: stack-shell.nix
@@ -0,0 +1 @@
1+stack-15.4.yaml