| @@ -1,67 +1,65 @@ | | | @@ -1,67 +1,65 @@ |
1 | # $NetBSD: Makefile,v 1.7 2022/09/07 06:50:53 pho Exp $ | | 1 | # $NetBSD: Makefile,v 1.8 2022/09/08 04:46:41 pho Exp $ |
2 | | | 2 | |
3 | DISTNAME= purescript-0.15.4 | | 3 | DISTNAME= purescript-0.15.4 |
4 | PKGNAME= ${DISTNAME} | | 4 | PKGNAME= ${DISTNAME} |
5 | PKGREVISION= 1 | | 5 | PKGREVISION= 1 |
6 | CATEGORIES= lang | | 6 | CATEGORIES= lang |
7 | | | 7 | |
8 | MAINTAINER= pkgsrc-users@NetBSD.org | | 8 | MAINTAINER= pkgsrc-users@NetBSD.org |
9 | HOMEPAGE= http://www.purescript.org/ | | 9 | HOMEPAGE= http://www.purescript.org/ |
10 | COMMENT= Strongly typed programming language that compiles to JavaScript | | 10 | COMMENT= Strongly typed programming language that compiles to JavaScript |
11 | LICENSE= modified-bsd | | 11 | LICENSE= modified-bsd |
12 | | | 12 | |
13 | USE_TOOLS+= happy | | 13 | USE_TOOLS+= happy |
14 | | | 14 | |
15 | CONFIGURE_ARGS+= -f release | | 15 | CONFIGURE_ARGS+= -f release |
16 | | | 16 | |
17 | # If purs is to be linked dynamically, it will depend on more than 180 | | 17 | # If purs is to be linked dynamically, it will depend on more than 180 |
18 | # shared objects and the dynamic linker will spend several seconds to | | 18 | # shared objects and the dynamic linker will spend several seconds to |
19 | # resolve symbols on startup. This is unacceptable because purs tends to be | | 19 | # resolve symbols on startup. This is unacceptable because purs tends to be |
20 | # launched very frequently by build systems. This wastes storage, but time | | 20 | # launched very frequently by build systems. This wastes storage, but time |
21 | # is more expensive than disks. | | 21 | # is more expensive than disks. |
22 | HASKELL_ENABLE_SHARED_LIBRARY= no | | 22 | HASKELL_ENABLE_SHARED_LIBRARY= no |
23 | | | 23 | |
24 | # It makes no sense to build the profiling library because this package | | 24 | # It makes no sense to build the profiling library because this package |
25 | # isn't meant to be used as a library. | | 25 | # isn't meant to be used as a library. |
26 | HASKELL_ENABLE_LIBRARY_PROFILING= no | | 26 | HASKELL_ENABLE_LIBRARY_PROFILING= no |
27 | | | 27 | |
| | | 28 | # These constraints can only be solved with GHC 9.2.3 which we haven't |
| | | 29 | # packaged yet. |
| | | 30 | HASKELL_UNRESTRICT_DEPENDENCIES+= \ |
| | | 31 | Cabal \ |
| | | 32 | base \ |
| | | 33 | bytestring \ |
| | | 34 | deepseq \ |
| | | 35 | filepath \ |
| | | 36 | parsec \ |
| | | 37 | stm \ |
| | | 38 | process |
| | | 39 | # These constraints can only be solved with older packages than what we |
| | | 40 | # provide. |
| | | 41 | HASKELL_UNRESTRICT_DEPENDENCIES+= \ |
| | | 42 | aeson \ |
| | | 43 | language-javascript \ |
| | | 44 | lens \ |
| | | 45 | memory \ |
| | | 46 | vector |
| | | 47 | |
28 | # purs is built with optparse-applicative, and can generate shell | | 48 | # purs is built with optparse-applicative, and can generate shell |
29 | # completion scripts automatically. | | 49 | # completion scripts automatically. |
30 | OPTPARSE_APPLICATIVE_EXECUTABLES+= purs | | 50 | OPTPARSE_APPLICATIVE_EXECUTABLES+= purs |
31 | .include "../../devel/hs-optparse-applicative/application.mk" | | 51 | .include "../../devel/hs-optparse-applicative/application.mk" |
32 | | | 52 | |
33 | # Relax version constraints. | | | |
34 | SUBST_CLASSES+= cabal | | | |
35 | SUBST_STAGE.cabal= post-extract | | | |
36 | SUBST_FILES.cabal= purescript.cabal | | | |
37 | # These constraints can only be resolved with GHC 9.2.3 which we haven't | | | |
38 | # packaged yet. | | | |
39 | SUBST_SED.cabal+= -e 's/Cabal >=3.6.3.0 && <3.7/Cabal/' | | | |
40 | SUBST_SED.cabal+= -e 's/base >=4.16.2.0 && <4.17/base/' | | | |
41 | SUBST_SED.cabal+= -e 's/bytestring >=0.11.3.1 && <0.12/bytestring/' | | | |
42 | SUBST_SED.cabal+= -e 's/deepseq >=1.4.6.1 && <1.5/deepseq/' | | | |
43 | SUBST_SED.cabal+= -e 's/filepath >=1.4.2.2 && <1.5/filepath/' | | | |
44 | SUBST_SED.cabal+= -e 's/parsec >=3.1.15.0 && <3.2/parsec/' | | | |
45 | SUBST_SED.cabal+= -e 's/stm >=2.5.0.2 && <2.6/stm/' | | | |
46 | SUBST_SED.cabal+= -e 's/process ==1.6.13.1/process/' | | | |
47 | # These constraints can only be resolved with older packages than what we | | | |
48 | # provide. | | | |
49 | SUBST_SED.cabal+= -e 's/aeson >=2.0.3.0 && <2.1/aeson/' | | | |
50 | SUBST_SED.cabal+= -e 's/language-javascript ==0.7.0.0/language-javascript/' | | | |
51 | SUBST_SED.cabal+= -e 's/lens >=5.1.1 && <5.2/lens/' | | | |
52 | SUBST_SED.cabal+= -e 's/memory >=0.17.0 && <0.18/memory/' | | | |
53 | SUBST_SED.cabal+= -e 's/vector >=0.12.3.1 && <0.13/vector/' | | | |
54 | | | | |
55 | # lib:purescript | | 53 | # lib:purescript |
56 | .include "../../converters/hs-aeson/buildlink3.mk" | | 54 | .include "../../converters/hs-aeson/buildlink3.mk" |
57 | .include "../../converters/hs-aeson-better-errors/buildlink3.mk" | | 55 | .include "../../converters/hs-aeson-better-errors/buildlink3.mk" |
58 | .include "../../converters/hs-aeson-pretty/buildlink3.mk" | | 56 | .include "../../converters/hs-aeson-pretty/buildlink3.mk" |
59 | .include "../../devel/hs-ansi-terminal/buildlink3.mk" | | 57 | .include "../../devel/hs-ansi-terminal/buildlink3.mk" |
60 | .include "../../devel/hs-base-compat/buildlink3.mk" | | 58 | .include "../../devel/hs-base-compat/buildlink3.mk" |
61 | .include "../../textproc/hs-blaze-html/buildlink3.mk" | | 59 | .include "../../textproc/hs-blaze-html/buildlink3.mk" |
62 | .include "../../www/hs-bower-json/buildlink3.mk" | | 60 | .include "../../www/hs-bower-json/buildlink3.mk" |
63 | .include "../../textproc/hs-boxes/buildlink3.mk" | | 61 | .include "../../textproc/hs-boxes/buildlink3.mk" |
64 | .include "../../devel/hs-cborg/buildlink3.mk" | | 62 | .include "../../devel/hs-cborg/buildlink3.mk" |
65 | .include "../../textproc/hs-cheapskate/buildlink3.mk" | | 63 | .include "../../textproc/hs-cheapskate/buildlink3.mk" |
66 | .include "../../time/hs-clock/buildlink3.mk" | | 64 | .include "../../time/hs-clock/buildlink3.mk" |
67 | .include "../../security/hs-cryptonite/buildlink3.mk" | | 65 | .include "../../security/hs-cryptonite/buildlink3.mk" |