From 55e051ad1249a8998125bef3e7c124f762b6e046 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Sun, 29 Oct 2023 08:44:39 +0000 Subject: automatic import of ghc-unordered-containers --- .gitignore | 1 + ghc-unordered-containers.spec | 117 +++++++++++++++++++++++++++++++++ sources | 1 + unordered-containers.cabal | 147 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 266 insertions(+) create mode 100644 ghc-unordered-containers.spec create mode 100644 sources create mode 100755 unordered-containers.cabal diff --git a/.gitignore b/.gitignore index e69de29..31eace1 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/unordered-containers-0.2.19.1.tar.gz diff --git a/ghc-unordered-containers.spec b/ghc-unordered-containers.spec new file mode 100644 index 0000000..20ec136 --- /dev/null +++ b/ghc-unordered-containers.spec @@ -0,0 +1,117 @@ +%global pkg_name unordered-containers +%global pkgver %{pkg_name}-%{version} +%bcond_with tests + +Name: ghc-%{pkg_name} +Version: 0.2.19.1 +Release: 1 +Summary: Efficient hashing-based container types +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/2.cabal#/%{pkg_name}.cabal +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-base-prof +BuildRequires: ghc-deepseq-devel +BuildRequires: ghc-deepseq-prof +BuildRequires: ghc-hashable-devel +BuildRequires: ghc-hashable-prof +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-template-haskell-devel +BuildRequires: ghc-template-haskell-prof +ExcludeArch: %{ix86} +%if %{with tests} +BuildRequires: ghc-ChasingBottoms-devel +BuildRequires: ghc-ChasingBottoms-prof +BuildRequires: ghc-HUnit-devel +BuildRequires: ghc-HUnit-prof +BuildRequires: ghc-QuickCheck-devel +BuildRequires: ghc-QuickCheck-prof +BuildRequires: ghc-containers-devel +BuildRequires: ghc-containers-prof +BuildRequires: ghc-nothunks-devel +BuildRequires: ghc-nothunks-prof +BuildRequires: ghc-random-devel +BuildRequires: ghc-random-prof +BuildRequires: ghc-tasty-devel +BuildRequires: ghc-tasty-hunit-devel +BuildRequires: ghc-tasty-hunit-prof +BuildRequires: ghc-tasty-prof +BuildRequires: ghc-tasty-quickcheck-devel +BuildRequires: ghc-tasty-quickcheck-prof +%endif + +%description +Efficient hashing-based container types. The containers have been optimized for +performance critical use, both in terms of large data quantities and high +speed. + +The declared cost of each operation is either worst-case or amortized, but +remains valid even if structures are shared. + +/Security/ + +This package currently provides no defenses against hash collision attacks such +as HashDoS. Users who need to store input from untrusted sources are advised to +use 'Data.Map' or 'Data.Set' from the 'containers' package instead. + +%package devel +Summary: Haskell %{pkg_name} library development files +Requires: %{name} = %{version}-%{release} +Requires: ghc-compiler = %{ghc_version} +Requires(post): ghc-compiler = %{ghc_version} +Requires(postun): ghc-compiler = %{ghc_version} + +%description devel +This package provides the Haskell %{pkg_name} library development +files. + +%package -n ghc-%{pkg_name}-help +Summary: Haskell %{pkg_name} library documentation +BuildArch: noarch + +%description -n ghc-%{pkg_name}-help +This package provides the Haskell %{pkg_name} library documentation. + +%package -n ghc-%{pkg_name}-prof +Summary: Haskell %{pkg_name} profiling library +Requires: ghc-%{pkg_name}-devel = %{version}-%{release} +Supplements: (ghc-%{pkg_name}-devel and ghc-prof) + +%description -n ghc-%{pkg_name}-prof +This package provides the Haskell %{pkg_name} profiling library. + +%prep +%autosetup -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal + +%build +%ghc_lib_build + +%install +%ghc_lib_install + +%check +%cabal_test + +%post devel +%ghc_pkg_recache + +%postun devel +%ghc_pkg_recache + +%files -f %{name}.files +%license LICENSE + +%files devel -f %{name}-devel.files +%doc CHANGES.md + +%files -n ghc-%{pkg_name}-help -f ghc-%{pkg_name}-help.files +%license LICENSE + +%files -n ghc-%{pkg_name}-prof -f ghc-%{pkg_name}-prof.files + +%changelog +* Tue Aug 22 2023 Lin Runze 0.2.19.1-1 +- Initial packaging (Version 0.2.19.1) diff --git a/sources b/sources new file mode 100644 index 0000000..85050f5 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +bd5f179155a183e3075dccf3c1b980f6 unordered-containers-0.2.19.1.tar.gz diff --git a/unordered-containers.cabal b/unordered-containers.cabal new file mode 100755 index 0000000..145bddc --- /dev/null +++ b/unordered-containers.cabal @@ -0,0 +1,147 @@ +name: unordered-containers +version: 0.2.19.1 +x-revision: 2 +synopsis: Efficient hashing-based container types +description: + Efficient hashing-based container types. The containers have been + optimized for performance critical use, both in terms of large data + quantities and high speed. + . + The declared cost of each operation is either worst-case or + amortized, but remains valid even if structures are shared. + . + /Security/ + . + This package currently provides no defenses against hash collision attacks + such as HashDoS. + Users who need to store input from untrusted sources are advised to use + @Data.Map@ or @Data.Set@ from the @containers@ package instead. +license: BSD3 +license-file: LICENSE +author: Johan Tibell +maintainer: simon.jakobi@gmail.com, David.Feuer@gmail.com +Homepage: https://github.com/haskell-unordered-containers/unordered-containers +bug-reports: https://github.com/haskell-unordered-containers/unordered-containers/issues +copyright: 2010-2014 Johan Tibell + 2010 Edward Z. Yang +category: Data +build-type: Simple +cabal-version: >=1.10 +extra-source-files: CHANGES.md + +tested-with: + GHC ==9.6.1 + || ==9.4.4 + || ==9.2.7 + || ==9.0.2 + || ==8.10.7 + || ==8.8.4 + || ==8.6.5 + || ==8.4.4 + || ==8.2.2 + +flag debug + description: Enable debug support + default: False + +library + exposed-modules: + Data.HashMap.Internal + Data.HashMap.Internal.Array + Data.HashMap.Internal.List + Data.HashMap.Internal.Strict + Data.HashMap.Lazy + Data.HashMap.Strict + Data.HashSet + Data.HashSet.Internal + + build-depends: + base >= 4.10 && < 5, + deepseq >= 1.4.3, + hashable >= 1.2.5 && < 1.5, + template-haskell < 2.21 + + default-language: Haskell2010 + + other-extensions: + RoleAnnotations, + UnboxedTuples, + ScopedTypeVariables, + MagicHash, + BangPatterns + + ghc-options: -Wall -O2 -fwarn-tabs -ferror-spans + + -- For dumping the generated code: + -- ghc-options: -ddump-simpl -ddump-stg-final -ddump-cmm -ddump-asm -ddump-to-file + -- ghc-options: -dsuppress-coercions -dsuppress-unfoldings -dsuppress-module-prefixes + -- ghc-options: -dsuppress-uniques -dsuppress-timestamps + + if flag(debug) + cpp-options: -DASSERTS + +test-suite unordered-containers-tests + hs-source-dirs: tests + main-is: Main.hs + type: exitcode-stdio-1.0 + other-modules: + Regressions + Properties + Properties.HashMapLazy + Properties.HashMapStrict + Properties.HashSet + Properties.List + Strictness + + build-depends: + base, + ChasingBottoms, + containers >= 0.5.8, + hashable, + HUnit, + QuickCheck >= 2.4.0.1, + random, + tasty >= 1.4.0.3, + tasty-hunit >= 0.10.0.3, + tasty-quickcheck >= 0.10.1.2, + unordered-containers + + if impl(ghc >= 8.6) + build-depends: + nothunks >= 0.1.3 + + default-language: Haskell2010 + ghc-options: -Wall + cpp-options: -DASSERTS + +benchmark benchmarks + hs-source-dirs: benchmarks + main-is: Benchmarks.hs + type: exitcode-stdio-1.0 + + other-modules: + Util.ByteString + Util.String + Util.Int + + build-depends: + base, + bytestring >= 0.10.0.0, + containers, + deepseq, + hashable, + hashmap, + mtl, + random, + tasty-bench >= 0.3.1, + unordered-containers + + default-language: Haskell2010 + ghc-options: -Wall -O2 -rtsopts -with-rtsopts=-A32m + if impl(ghc >= 8.10) + ghc-options: "-with-rtsopts=-A32m --nonmoving-gc" + -- cpp-options: -DBENCH_containers_Map -DBENCH_containers_IntMap -DBENCH_hashmap_Map + +source-repository head + type: git + location: https://github.com/haskell-unordered-containers/unordered-containers.git -- cgit v1.2.3