diff --git a/ghc-reflection.changes b/ghc-reflection.changes index 688c19a..d6056b3 100644 --- a/ghc-reflection.changes +++ b/ghc-reflection.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Nov 16 19:51:23 UTC 2021 - psimons@suse.com + +- Update reflection to version 2.1.6 revision 1. + Upstream has revised the Cabal build instructions on Hackage. + ------------------------------------------------------------------- Tue Sep 7 18:46:58 UTC 2021 - Ondřej Súkup diff --git a/ghc-reflection.spec b/ghc-reflection.spec index 9fa1822..bcdb48d 100644 --- a/ghc-reflection.spec +++ b/ghc-reflection.spec @@ -25,6 +25,7 @@ Summary: Reifies arbitrary terms into types that can be reflected back in License: BSD-3-Clause 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-rpm-macros BuildRequires: ghc-template-haskell-devel @@ -63,6 +64,7 @@ This package provides the Haskell %{pkg_name} library development files. %prep %autosetup -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build diff --git a/reflection.cabal b/reflection.cabal new file mode 100644 index 0000000..9d818df --- /dev/null +++ b/reflection.cabal @@ -0,0 +1,126 @@ +name: reflection +version: 2.1.6 +x-revision: 1 +license: BSD3 +license-file: LICENSE +author: Edward A. Kmett, Elliott Hird, Oleg Kiselyov and Chung-chieh Shan +maintainer: Edward A. Kmett +stability: experimental +homepage: http://github.com/ekmett/reflection +bug-reports: http://github.com/ekmett/reflection/issues +category: Data, Reflection, Dependent Types +synopsis: Reifies arbitrary terms into types that can be reflected back into terms +copyright: 2009-2013 Edward A. Kmett, + 2012 Elliott Hird, + 2004 Oleg Kiselyov and Chung-chieh Shan +build-type: Simple +cabal-version: >= 1.10 +description: + This package addresses the /configuration problem/ which is + propagating configurations that are available at run-time, allowing + multiple configurations to coexist without resorting to mutable + global variables or 'System.IO.Unsafe.unsafePerformIO'. + . + That package is an implementation of the ideas presented in the + paper \"Functional Pearl: Implicit Configurations\" by Oleg Kiselyov + and Chung-chieh Shan (). + However, the API has been streamlined to improve performance. + . + Austin Seipp's tutorial provides a summary of the + approach taken by this library, along with more motivating examples. +tested-with: GHC == 7.0.4 + , GHC == 7.2.2 + , GHC == 7.4.2 + , GHC == 7.6.3 + , GHC == 7.8.4 + , GHC == 7.10.3 + , GHC == 8.0.2 + , GHC == 8.2.2 + , GHC == 8.4.4 + , GHC == 8.6.5 + , GHC == 8.8.3 + , GHC == 8.10.1 + +extra-source-files: + examples/reflection-examples.cabal + examples/LICENSE + examples/*.hs + CHANGELOG.markdown + README.markdown + slow/Data/Reflection.hs + fast/Data/Reflection.hs + .travis.yml + +flag slow + description: + If you enable this flag, we use a more portable much much slower implementation. Moreover, the 'Given' API is broken, so this is currently an unsupported configuration. If you feel the need to turn on this flag for any reason, please email the maintainer! + default: False + manual: False + +flag template-haskell + description: + You can disable the use of the `template-haskell` package using `-f-template-haskell`. + . + Disabling this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users. + default: True + manual: True + +source-repository head + type: git + location: git://github.com/ekmett/reflection.git + +library + ghc-options: -Wall + + if impl(ghc >= 7.2) + default-extensions: Trustworthy + + build-depends: + base >= 2 && < 5 + + if impl(ghc < 7.8) + build-depends: + tagged >= 0.4.4 && < 1 + + if !impl(ghc >= 8.0) + build-depends: + semigroups >= 0.11 && < 0.21 + + default-language: Haskell98 + + if flag(template-haskell) && impl(ghc) + if !impl(ghc >= 8.0) + other-extensions: TemplateHaskell + -- else + -- other-extensions: TemplateHaskellQuotes -- Hackage doesn't know this extension yet + build-depends: template-haskell + + if !flag(slow) && (impl(ghc) || impl(hugs)) + hs-source-dirs: fast + else + other-extensions: ScopedTypeVariables, FlexibleInstances + hs-source-dirs: slow + + other-extensions: + MultiParamTypeClasses, + FunctionalDependencies, + Rank2Types, + CPP + + exposed-modules: Data.Reflection + +test-suite spec + type: exitcode-stdio-1.0 + hs-source-dirs: tests + main-is: Spec.hs + other-modules: ReifyNatSpec + T47Spec + ghc-options: -Wall + default-language: Haskell98 + build-tool-depends: hspec-discover:hspec-discover >= 1.8 + build-depends: + base >= 2 && < 5, + containers >= 0.1 && < 0.7, + hspec >= 2 && < 3, + QuickCheck >= 2 && < 3, + reflection