forked from pool/ghc-reflection
osc copypac from project:devel:languages:haskell:ghc-9.4.x package:ghc-reflection revision:8, using keep-link
OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-reflection?expand=0&rev=37
This commit is contained in:
parent
440f647cfd
commit
69ed80c928
@ -1,3 +1,11 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Sep 30 12:49:12 UTC 2023 - Peter Simons <psimons@suse.com>
|
||||
|
||||
- Update reflection to version 2.1.7 revision 1.
|
||||
Upstream has revised the Cabal build instructions on Hackage.
|
||||
|
||||
- Drop obsolete code to remove +x permission from data files.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 30 17:08:02 UTC 2023 - Peter Simons <psimons@suse.com>
|
||||
|
||||
|
@ -26,6 +26,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-base-devel
|
||||
BuildRequires: ghc-base-prof
|
||||
@ -92,7 +93,7 @@ This package provides the Haskell %{pkg_name} profiling library.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{pkg_name}-%{version}
|
||||
find . -type f -exec chmod -x {} +
|
||||
cp -p %{SOURCE1} %{pkg_name}.cabal
|
||||
|
||||
%build
|
||||
%ghc_lib_build
|
||||
|
136
reflection.cabal
Normal file
136
reflection.cabal
Normal file
@ -0,0 +1,136 @@
|
||||
name: reflection
|
||||
version: 2.1.7
|
||||
x-revision: 1
|
||||
license: BSD3
|
||||
license-file: LICENSE
|
||||
author: Edward A. Kmett, Elliott Hird, Oleg Kiselyov and Chung-chieh Shan
|
||||
maintainer: Edward A. Kmett <ekmett@gmail.com>
|
||||
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 (<http://okmij.org/ftp/Haskell/tr-15-04.pdf original paper>).
|
||||
However, the API has been streamlined to improve performance.
|
||||
.
|
||||
There are a handful of tutorials on how to use this library:
|
||||
.
|
||||
* Austin Seipp's tutorial <https://www.schoolofhaskell.com/user/thoughtpolice/using-reflection Reflecting values to types and back> provides a summary of the
|
||||
approach taken by this library, along with more motivating examples.
|
||||
.
|
||||
* Arnaud Spiwack's tutorial <https://www.tweag.io/posts/2017-12-21-reflection-tutorial.html All about reflection> explains how to use this library.
|
||||
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.4
|
||||
, GHC == 8.10.7
|
||||
, GHC == 9.0.2
|
||||
, GHC == 9.2.6
|
||||
, GHC == 9.4.4
|
||||
, GHC == 9.6.1
|
||||
|
||||
extra-source-files:
|
||||
.hlint.yaml
|
||||
examples/reflection-examples.cabal
|
||||
examples/LICENSE
|
||||
examples/*.hs
|
||||
CHANGELOG.markdown
|
||||
README.markdown
|
||||
slow/Data/Reflection.hs
|
||||
fast/Data/Reflection.hs
|
||||
|
||||
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 >= 8.6)
|
||||
ghc-options: -Wno-star-is-type
|
||||
|
||||
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.8,
|
||||
hspec >= 2 && < 3,
|
||||
QuickCheck >= 2 && < 3,
|
||||
reflection
|
Loading…
Reference in New Issue
Block a user