diff --git a/HsYAML.cabal b/HsYAML.cabal new file mode 100644 index 0000000..3f71b2a --- /dev/null +++ b/HsYAML.cabal @@ -0,0 +1,108 @@ +cabal-version: 1.14 +name: HsYAML +version: 0.1.1.2 +x-revision: 1 + +synopsis: Pure Haskell YAML 1.2 parser +homepage: https://github.com/hvr/HsYAML +bug-reports: https://github.com/hvr/HsYAML/issues +license: GPL-2 +X-SPDX-License-Identifier: GPL-2.0-or-later +license-files: LICENSE.GPLv2 LICENSE.GPLv3 +author: Herbert Valerio Riedel +maintainer: hvr@gnu.org +copyright: 2015-2018 Herbert Valerio Riedel + , 2007-2008 Oren Ben-Kiki +category: Text +build-type: Simple +tested-with: GHC==8.6.1, GHC==8.4.3, GHC==8.4.1, GHC==8.2.2, GHC==8.0.2, GHC==7.10.3, GHC==7.8.4, GHC==7.6.3, GHC==7.4.2 + +description: + @HsYAML@ is a [YAML 1.2](http://yaml.org/spec/1.2/spec.html) parser implementation for Haskell. + . + Features of @HsYAML@ include: + . + * Pure Haskell implementation with small dependency footprint and emphasis on strict compliance with the [YAML 1.2 specification](http://yaml.org/spec/1.2/spec.html). + * Direct decoding to native Haskell types via (@aeson@-inspired) typeclass-based API (see "Data.YAML"). + * Support for constructing custom YAML node graph representation (including support for cyclic YAML data structures). + * Support for the standard (untyped) /Failsafe/, (strict) /JSON/, and (flexible) /Core/ \"schemas\" providing implicit typing rules as defined in the YAML 1.2 specification (including support for user-defined custom schemas). + * Event-based API resembling LibYAML's Event-based API (see "Data.YAML.Event"). + * Low-level API access to lexical token-based scanner (see "Data.YAML.Token"). + . + +extra-source-files: + ChangeLog.md + +source-repository head + type: git + location: https://github.com/hvr/HsYAML.git + +flag exe + description: Enable @exe:yaml-test@ component + manual: True + default: False + +library + hs-source-dirs: src + exposed-modules: Data.YAML + , Data.YAML.Event + , Data.YAML.Token + other-modules: Data.YAML.Loader + , Data.YAML.Schema + , Data.YAML.Token.Encoding + , Util + + default-language: Haskell2010 + other-extensions: FlexibleContexts + FlexibleInstances + FunctionalDependencies + MultiParamTypeClasses + OverloadedStrings + PostfixOperators + RecordWildCards + RecursiveDo + Safe + ScopedTypeVariables + Trustworthy + TypeSynonymInstances + + build-depends: base >=4.5 && <4.13 + , bytestring >=0.9 && <0.11 + , dlist >=0.8 && <0.9 + , containers >=0.4.2 && <0.7 + , text >=1.2.3 && <1.3 + , mtl >=2.2.1 && <2.3 + , parsec >=3.1.13.0 && < 3.2 + + if !impl(ghc >= 8.0) + build-depends: fail >=4.9.0.0 && <4.10 + + if !impl(ghc >= 7.10) + build-depends: nats >=1.1.2 && <1.2 + + ghc-options: -Wall + +executable yaml-test + hs-source-dirs: src-test + main-is: Main.hs + other-modules: TML + + default-language: Haskell2010 + + if flag(exe) + build-depends: HsYAML + -- inherited constraints + , bytestring >= 0.10.8.0 + , base + , text + , containers + , mtl + -- non-inherited + , megaparsec >= 6.5.0 && < 6.6 + , microaeson == 0.1.* + , filepath == 1.4.* + , directory >= 1.2 && < 1.4 + else + buildable: False + + ghc-options: -rtsopts diff --git a/ghc-HsYAML.spec b/ghc-HsYAML.spec index 43df41f..7363eac 100644 --- a/ghc-HsYAML.spec +++ b/ghc-HsYAML.spec @@ -25,6 +25,7 @@ License: GPL-2.0-or-later Group: Development/Libraries/Haskell URL: https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal BuildRequires: ghc-Cabal-devel BuildRequires: ghc-bytestring-devel BuildRequires: ghc-containers-devel @@ -65,6 +66,7 @@ This package provides the Haskell %{pkg_name} library development files. %prep %setup -q -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build