From e72f0eee5307e2a25713df69ba35b044454aace2 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Mon, 30 Oct 2023 02:46:39 +0000 Subject: automatic import of ghc-vector --- .gitignore | 1 + ghc-vector.spec | 129 ++++++++++++++++++++++ sources | 1 + vector.cabal | 324 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 455 insertions(+) create mode 100644 ghc-vector.spec create mode 100644 sources create mode 100755 vector.cabal diff --git a/.gitignore b/.gitignore index e69de29..6dbf518 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/vector-0.13.0.0.tar.gz diff --git a/ghc-vector.spec b/ghc-vector.spec new file mode 100644 index 0000000..432a87c --- /dev/null +++ b/ghc-vector.spec @@ -0,0 +1,129 @@ +%global pkg_name vector +%global pkgver %{pkg_name}-%{version} +%bcond_with tests + +Name: ghc-%{pkg_name} +Version: 0.13.0.0 +Release: 1 +Summary: Efficient Arrays +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/5.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-primitive-devel +BuildRequires: ghc-primitive-prof +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-vector-stream-devel +BuildRequires: ghc-vector-stream-prof +ExcludeArch: %{ix86} +%if %{with tests} +BuildRequires: ghc-HUnit-devel +BuildRequires: ghc-HUnit-prof +BuildRequires: ghc-QuickCheck-devel +BuildRequires: ghc-QuickCheck-prof +BuildRequires: ghc-base-orphans-devel +BuildRequires: ghc-base-orphans-prof +BuildRequires: ghc-doctest-devel +BuildRequires: ghc-doctest-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-inspection-testing-devel +BuildRequires: ghc-tasty-inspection-testing-prof +BuildRequires: ghc-tasty-prof +BuildRequires: ghc-tasty-quickcheck-devel +BuildRequires: ghc-tasty-quickcheck-prof +BuildRequires: ghc-template-haskell-devel +BuildRequires: ghc-template-haskell-prof +BuildRequires: ghc-transformers-devel +BuildRequires: ghc-transformers-prof +%endif + +%description +An efficient implementation of 'Int'-indexed arrays (both mutable and +immutable), with a powerful loop optimisation framework . + +It is structured as follows: + +["Data.Vector"] Boxed vectors of arbitrary types. + +["Data.Vector.Unboxed"] Unboxed vectors with an adaptive representation based +on data type families. + +["Data.Vector.Storable"] Unboxed vectors of 'Storable' types. + +["Data.Vector.Primitive"] Unboxed vectors of primitive types as defined by the +'primitive' package. "Data.Vector.Unboxed" is more flexible at no performance +cost. + +["Data.Vector.Generic"] Generic interface to the vector types. + +There is also a (draft) tutorial on common uses of vector. + +* . + +%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 README.md changelog.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.13.0.0-1 +- Initial packaging (Version 0.13.0.0) diff --git a/sources b/sources new file mode 100644 index 0000000..ab899d2 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +670591e08522806a78c30321116e2677 vector-0.13.0.0.tar.gz diff --git a/vector.cabal b/vector.cabal new file mode 100755 index 0000000..3ca3d29 --- /dev/null +++ b/vector.cabal @@ -0,0 +1,324 @@ +Name: vector +Version: 0.13.0.0 +x-revision: 5 +-- don't forget to update the changelog file! +License: BSD3 +License-File: LICENSE +Author: Roman Leshchinskiy +Maintainer: Haskell Libraries Team +Copyright: (c) Roman Leshchinskiy 2008-2012, + Alexey Kuleshevich 2020-2022, + Aleksey Khudyakov 2020-2022, + Andrew Lelechenko 2020-2022 + +Homepage: https://github.com/haskell/vector +Bug-Reports: https://github.com/haskell/vector/issues +Category: Data, Data Structures +Synopsis: Efficient Arrays +Description: + . + An efficient implementation of @Int@-indexed arrays (both mutable + and immutable), with a powerful loop optimisation framework . + . + It is structured as follows: + . + ["Data.Vector"] Boxed vectors of arbitrary types. + . + ["Data.Vector.Unboxed"] Unboxed vectors with an adaptive + representation based on data type families. + . + ["Data.Vector.Storable"] Unboxed vectors of 'Storable' types. + . + ["Data.Vector.Primitive"] Unboxed vectors of primitive types as + defined by the @primitive@ package. "Data.Vector.Unboxed" is more + flexible at no performance cost. + . + ["Data.Vector.Generic"] Generic interface to the vector types. + . + There is also a (draft) tutorial on common uses of vector. + . + * + +Tested-With: + 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.1, + GHC == 9.2.3 + +Cabal-Version: >= 1.10 +Build-Type: Simple + +Extra-Source-Files: + changelog.md + README.md + tests/LICENSE + tests/Setup.hs + tests/Main.hs + internal/GenUnboxTuple.hs + internal/unbox-tuple-instances + +Flag BoundsChecks + Description: Enable bounds checking + Default: True + Manual: True + +Flag UnsafeChecks + Description: Enable bounds checking in unsafe operations at the cost of a + significant performance penalty + Default: False + Manual: True + +Flag InternalChecks + Description: Enable internal consistency checks at the cost of a + significant performance penalty + Default: False + Manual: True + +Flag Wall + Description: Enable all -Wall warnings + Default: False + Manual: True + + +Library + Default-Language: Haskell2010 + Other-Extensions: + BangPatterns + CPP + DeriveDataTypeable + ExistentialQuantification + FlexibleContexts + FlexibleInstances + GADTs + KindSignatures + MagicHash + MultiParamTypeClasses + RankNTypes + ScopedTypeVariables + StandaloneDeriving + TypeFamilies + + Exposed-Modules: + Data.Vector.Internal.Check + + Data.Vector.Fusion.Util + Data.Vector.Fusion.Stream.Monadic + Data.Vector.Fusion.Bundle.Size + Data.Vector.Fusion.Bundle.Monadic + Data.Vector.Fusion.Bundle + + Data.Vector.Generic.Mutable.Base + Data.Vector.Generic.Mutable + Data.Vector.Generic.Base + Data.Vector.Generic.New + Data.Vector.Generic + + Data.Vector.Primitive.Mutable + Data.Vector.Primitive + + Data.Vector.Storable.Internal + Data.Vector.Storable.Mutable + Data.Vector.Storable + + Data.Vector.Unboxed.Base + Data.Vector.Unboxed.Mutable + Data.Vector.Unboxed + + Data.Vector.Mutable + Data.Vector + + Hs-Source-Dirs: + src + + Include-Dirs: + include, internal + + Install-Includes: + vector.h + + Build-Depends: base >= 4.9 && < 4.20 + , primitive >= 0.6.4.0 && < 0.9 + , deepseq >= 1.1 && < 1.6 + , vector-stream >= 0.1 && < 0.2 + + Ghc-Options: -O2 -Wall + + if !flag(Wall) + Ghc-Options: -fno-warn-orphans + + if impl(ghc >= 8.0) && impl(ghc < 8.1) + Ghc-Options: -Wno-redundant-constraints + + if flag(BoundsChecks) + cpp-options: -DVECTOR_BOUNDS_CHECKS + + if flag(UnsafeChecks) + cpp-options: -DVECTOR_UNSAFE_CHECKS + + if flag(InternalChecks) + cpp-options: -DVECTOR_INTERNAL_CHECKS + +source-repository head + type: git + location: https://github.com/haskell/vector.git + subdir: vector + + +test-suite vector-tests-O0 + Default-Language: Haskell2010 + type: exitcode-stdio-1.0 + Main-Is: Main.hs + + other-modules: Boilerplater + Tests.Bundle + Tests.Move + Tests.Vector + Tests.Vector.Property + Tests.Vector.Boxed + Tests.Vector.Storable + Tests.Vector.Primitive + Tests.Vector.Unboxed + Tests.Vector.UnitTests + Utilities + + hs-source-dirs: tests + Build-Depends: base >= 4.5 && < 5, template-haskell, base-orphans >= 0.6, vector, + primitive, random, + QuickCheck >= 2.9 && < 2.15, HUnit, tasty, + tasty-hunit, tasty-quickcheck, + transformers >= 0.2.0.0 + + default-extensions: CPP, + ScopedTypeVariables, + PatternGuards, + MultiParamTypeClasses, + FlexibleContexts, + RankNTypes, + TypeSynonymInstances, + TypeFamilies, + TemplateHaskell + + Ghc-Options: -O0 -threaded + Ghc-Options: -Wall + + if !flag(Wall) + Ghc-Options: -fno-warn-orphans -fno-warn-missing-signatures + if impl(ghc >= 8.0) && impl(ghc < 8.1) + Ghc-Options: -Wno-redundant-constraints + + +test-suite vector-tests-O2 + Default-Language: Haskell2010 + type: exitcode-stdio-1.0 + Main-Is: Main.hs + + other-modules: Boilerplater + Tests.Bundle + Tests.Move + Tests.Vector + Tests.Vector.Property + Tests.Vector.Boxed + Tests.Vector.Storable + Tests.Vector.Primitive + Tests.Vector.Unboxed + Tests.Vector.UnitTests + Utilities + + hs-source-dirs: tests + Build-Depends: base >= 4.5 && < 5, template-haskell, base-orphans >= 0.6, vector, + primitive, random, + QuickCheck >= 2.9 && < 2.15, HUnit, tasty, + tasty-hunit, tasty-quickcheck, + transformers >= 0.2.0.0 + + default-extensions: CPP, + ScopedTypeVariables, + PatternGuards, + MultiParamTypeClasses, + FlexibleContexts, + RankNTypes, + TypeSynonymInstances, + TypeFamilies, + TemplateHaskell + + Ghc-Options: -Wall + Ghc-Options: -O2 -threaded + if !flag(Wall) + Ghc-Options: -fno-warn-orphans -fno-warn-missing-signatures + if impl(ghc >= 8.0) && impl(ghc < 8.1) + Ghc-Options: -Wno-redundant-constraints + +test-suite vector-doctest + type: exitcode-stdio-1.0 + main-is: doctests.hs + hs-source-dirs: tests + default-language: Haskell2010 + -- Older GHC don't support DerivingVia + if impl(ghc < 8.6) + buildable: False + -- GHC 8.10 fails to run doctests for some reason + if impl(ghc >= 8.10) && impl(ghc < 8.11) + buildable: False + -- GHC 9.0 fails to run doctests for some reason too + if impl(ghc >= 9.0) && impl(ghc < 9.1) + buildable: False + -- And GHC 9.2 too + if impl(ghc >= 9.2) && impl(ghc < 9.2.3) + buildable: False + if impl(ghc >= 9.2.3) && impl(ghc < 9.3) + buildable: True + build-depends: + base -any + , doctest >=0.15 && <0.21 + , primitive >= 0.6.4.0 && < 0.8 + , vector -any + +test-suite vector-inspection + type: exitcode-stdio-1.0 + hs-source-dirs: tests-inspect + Ghc-Options: -Wall + main-is: main.hs + default-language: Haskell2010 + Other-modules: Inspect + if impl(ghc >= 8.6) + Other-modules: Inspect.DerivingVia + Inspect.DerivingVia.OtherFoo + build-depends: + base -any + , primitive >= 0.6.4.0 && < 0.8 + , vector -any + , tasty + , tasty-inspection-testing >= 0.1 + +benchmark algorithms + type: exitcode-stdio-1.0 + main-is: Main.hs + hs-source-dirs: benchmarks + default-language: Haskell2010 + + build-depends: + base >= 2 && < 5 + , random >= 1.2 + , tasty + , tasty-bench >= 0.2.1 + , vector + + ghc-options: -O2 + + other-modules: + Algo.MutableSet + Algo.ListRank + Algo.Rootfix + Algo.Leaffix + Algo.AwShCC + Algo.HybCC + Algo.Quickhull + Algo.Spectral + Algo.Tridiag + Algo.FindIndexR + TestData.ParenTree + TestData.Graph -- cgit v1.2.3