From 84744eff88ee48d326a81f99b6f399a91f28e39ac9cdcec7cb6a8e9840070692 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 10 Feb 2022 14:36:52 +0000 Subject: [PATCH 1/2] osc copypac from project:devel:languages:haskell:ghc-8.10.x package:ghc-foundation revision:11, using keep-link OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-foundation?expand=0&rev=13 --- foundation.cabal | 313 +++++++++++++++++++++++++++++++++++++++++ ghc-foundation.changes | 6 + ghc-foundation.spec | 4 +- 3 files changed, 322 insertions(+), 1 deletion(-) create mode 100644 foundation.cabal diff --git a/foundation.cabal b/foundation.cabal new file mode 100644 index 0000000..f10cb2c --- /dev/null +++ b/foundation.cabal @@ -0,0 +1,313 @@ +name: foundation +version: 0.0.26.1 +x-revision: 1 +synopsis: Alternative prelude with batteries and no dependencies +description: + A custom prelude with no dependencies apart from base. + . + This package has the following goals: + . + * provide a base like sets of modules that provide a consistent set of features and bugfixes across multiple versions of GHC (unlike base). + . + * provide a better and more efficient prelude than base's prelude. + . + * be self-sufficient: no external dependencies apart from base. + . + * provide better data-types: packed unicode string by default, arrays. + . + * Better numerical classes that better represent mathematical thing (No more all-in-one Num). + . + * Better I/O system with less Lazy IO + . + * Usual partial functions distinguished through type system +license: BSD3 +license-file: LICENSE +copyright: 2015-2017 Vincent Hanquez , 2017- Foundation Maintainers +author: Vincent Hanquez +maintainer: vincent@snarc.org +category: foundation +build-type: Simple +homepage: https://github.com/haskell-foundation/foundation +bug-reports: https://github.com/haskell-foundation/foundation/issues +cabal-version: 1.18 +extra-source-files: cbits/*.h + +source-repository head + type: git + location: https://github.com/haskell-foundation/foundation + subdir: foundation + +flag experimental + description: Enable building experimental features, known as highly unstable or without good support cross-platform + default: False + manual: True + +flag bench-all + description: Add some comparaison benchmarks against other haskell libraries + default: False + manual: True + +flag minimal-deps + description: Build fully with minimal deps (no criterion, no quickcheck, no doctest) + default: False + manual: True + +flag bounds-check + description: Add extra friendly boundary check for unsafe array operations + default: False + manual: True + +flag doctest + description: Build doctest on demand only + default: False + manual: True + +flag linktest + description: Run linking test + default: False + manual: True + +library + exposed-modules: Foundation + Foundation.Numerical + Foundation.Array + Foundation.Array.Internal + Foundation.Bits + Foundation.Class.Bifunctor + Foundation.Class.Storable + Foundation.Conduit + Foundation.Conduit.Textual + Foundation.Exception + Foundation.Format.CSV + Foundation.String + Foundation.String.Read + Foundation.String.Builder + Foundation.IO + Foundation.IO.FileMap + Foundation.IO.Terminal + Foundation.VFS + Foundation.VFS.Path + Foundation.VFS.FilePath + Foundation.VFS.URI + Foundation.Math.Trigonometry + Foundation.Hashing + Foundation.Foreign + Foundation.Collection + Foundation.Primitive + Foundation.List.DList + Foundation.List.ListN + Foundation.Monad + Foundation.Monad.Except + Foundation.Monad.Reader + Foundation.Monad.State + Foundation.Network.IPv4 + Foundation.Network.IPv6 + Foundation.System.Info + Foundation.Strict + Foundation.Parser + Foundation.Random + Foundation.Check + Foundation.Check.Main + Foundation.Timing + Foundation.Timing.Main + Foundation.Time.Types + Foundation.Time.Bindings + Foundation.Time.StopWatch + Foundation.Tuple.Nth + Foundation.UUID + Foundation.System.Entropy + Foundation.System.Bindings + other-modules: + Foundation.Tuple + Foundation.Hashing.FNV + Foundation.Hashing.SipHash + Foundation.Hashing.Hasher + Foundation.Hashing.Hashable + Foundation.Check.Gen + Foundation.Check.Print + Foundation.Check.Arbitrary + Foundation.Check.Property + Foundation.Check.Config + Foundation.Check.Types + Foundation.Collection.Buildable + Foundation.Collection.List + Foundation.Collection.Element + Foundation.Collection.InnerFunctor + Foundation.Collection.Collection + Foundation.Collection.Copy + Foundation.Collection.Sequential + Foundation.Collection.Keyed + Foundation.Collection.Indexed + Foundation.Collection.Foldable + Foundation.Collection.Mutable + Foundation.Collection.Zippable + Foundation.Collection.Mappable + Foundation.Conduit.Internal + Foundation.Format.CSV.Types + Foundation.Format.CSV.Builder + Foundation.Format.CSV.Parser + Foundation.Numerical.Floating + Foundation.IO.File + Foundation.Monad.MonadIO + Foundation.Monad.Exception + Foundation.Monad.Transformer + Foundation.Monad.Identity + Foundation.Monad.Base + Foundation.Random.Class + Foundation.Random.DRG + Foundation.Random.ChaChaDRG + Foundation.Random.XorShift + Foundation.Array.Chunked.Unboxed + Foundation.Array.Bitmap + Foundation.Foreign.Alloc + Foundation.Foreign.MemoryMap + Foundation.Foreign.MemoryMap.Types + Foundation.Partial + -- Foundation.Time.Bindings + Foundation.System.Entropy.Common + Foundation.System.Bindings.Network + Foundation.System.Bindings.Time + Foundation.System.Bindings.Hs + + include-dirs: cbits + c-sources: cbits/foundation_random.c + cbits/foundation_network.c + cbits/foundation_time.c + cbits/foundation_utf8.c + + if flag(experimental) + exposed-modules: Foundation.Network.HostName + if os(windows) + exposed-modules: Foundation.System.Bindings.Windows + other-modules: Foundation.Foreign.MemoryMap.Windows + Foundation.System.Entropy.Windows + else + exposed-modules: Foundation.System.Bindings.Posix + Foundation.System.Bindings.PosixDef + other-modules: Foundation.Foreign.MemoryMap.Posix + Foundation.System.Entropy.Unix + if os(linux) + exposed-modules: Foundation.System.Bindings.Linux + if os(osx) + exposed-modules: Foundation.System.Bindings.Macos + + default-extensions: NoImplicitPrelude + RebindableSyntax + TypeFamilies + BangPatterns + DeriveDataTypeable + + if impl(ghc < 8.0) || impl(ghcjs) + buildable: False + else + build-depends: base + , ghc-prim + if os(windows) + build-depends: Win32 < 2.12 + if arch(i386) + extra-libraries: gcc + + build-depends: basement == 0.0.12 + + -- FIXME add suport for armel mipsel + -- CPP-options: -DARCH_IS_LITTLE_ENDIAN + -- FIXME add support for powerpc powerpc64 armeb mipseb + -- CPP-options: -DARCH_IS_BIG_ENDIAN + if (arch(i386) || arch(x86_64)) + cpp-options: -DARCH_IS_LITTLE_ENDIAN + else + cpp-options: -DARCH_IS_UNKNOWN_ENDIAN + ghc-options: -Wall -fwarn-tabs + default-language: Haskell2010 + if impl(ghc >= 8.0) + ghc-options: -Wno-redundant-constraints + if flag(bounds-check) + cpp-options: -DFOUNDATION_BOUNDS_CHECK + +test-suite check-foundation + type: exitcode-stdio-1.0 + hs-source-dirs: tests + main-is: Checks.hs + other-modules: Test.Checks.Property.Collection + Test.Foundation.Random + Test.Foundation.Misc + Test.Foundation.Conduit + Test.Foundation.Primitive.BlockN + Test.Foundation.Storable + Test.Foundation.Number + Test.Foundation.String.Base64 + Test.Foundation.String + Test.Foundation.Bits + Test.Basement + Test.Basement.UTF8 + Test.Data.Network + Test.Data.List + Test.Foundation.Network.IPv4 + Test.Foundation.Network.IPv6 + Test.Foundation.Format + Test.Foundation.Format.CSV + default-extensions: NoImplicitPrelude + RebindableSyntax + OverloadedStrings + build-depends: base > 0 && < 1000 + , basement + , foundation + ghc-options: -Wall -fno-warn-orphans -fno-warn-missing-signatures + default-language: Haskell2010 + if impl(ghc >= 8.0) + ghc-options: -Wno-redundant-constraints + +test-suite foundation-link + type: exitcode-stdio-1.0 + hs-source-dirs: tests + default-language: Haskell2010 + main-is: Scripts/Link.hs + default-extensions: NoImplicitPrelude + RebindableSyntax + if flag(linktest) + build-depends: base > 0 && < 1000 + , foundation + , template-haskell + buildable: True + else + buildable: False + +test-suite doctest + type: exitcode-stdio-1.0 + hs-source-dirs: tests + default-language: Haskell2010 + main-is: DocTest.hs + default-extensions: NoImplicitPrelude + RebindableSyntax + if flag(minimal-deps) + -- TODO: for no, force unbuildable anyway + buildable: False + else + if flag(doctest) + build-depends: base + , doctest >= 0.9 + buildable: True + else + buildable: False + +Benchmark bench + main-is: Main.hs + other-modules: BenchUtil.Common + BenchUtil.RefData + Sys + LargeWords + Fake.ByteString + Fake.Text + Fake.Vector + hs-source-dirs: benchs + default-language: Haskell2010 + type: exitcode-stdio-1.0 + default-extensions: NoImplicitPrelude + BangPatterns + if flag(minimal-deps) || impl(ghc < 7.10) + buildable: False + else + build-depends: base, gauge, basement, foundation + if flag(bench-all) + cpp-options: -DBENCH_ALL + build-depends: text, attoparsec, vector, bytestring diff --git a/ghc-foundation.changes b/ghc-foundation.changes index 7222008..b724ecf 100644 --- a/ghc-foundation.changes +++ b/ghc-foundation.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri Feb 4 12:15:27 UTC 2022 - psimons@suse.com + +- Update foundation to version 0.0.26.1 revision 1. + Upstream has revised the Cabal build instructions on Hackage. + ------------------------------------------------------------------- Mon Apr 26 07:43:09 UTC 2021 - psimons@suse.com diff --git a/ghc-foundation.spec b/ghc-foundation.spec index 7f9df1c..ab5f3ed 100644 --- a/ghc-foundation.spec +++ b/ghc-foundation.spec @@ -1,7 +1,7 @@ # # spec file for package ghc-foundation # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -25,6 +25,7 @@ Summary: Alternative prelude with batteries and no dependencies 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-basement-devel BuildRequires: ghc-rpm-macros @@ -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 From d01dff6654babdc7a61d07915b4f66c7df8d15219d40eb4e6f8c5850bcfe9935 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 11 Feb 2022 02:01:58 +0000 Subject: [PATCH 2/2] osc copypac from project:devel:languages:haskell:ghc-8.10.x package:ghc-foundation revision:12, using keep-link OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-foundation?expand=0&rev=14 --- ghc-foundation.changes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ghc-foundation.changes b/ghc-foundation.changes index b724ecf..2cf4847 100644 --- a/ghc-foundation.changes +++ b/ghc-foundation.changes @@ -1,5 +1,5 @@ ------------------------------------------------------------------- -Fri Feb 4 12:15:27 UTC 2022 - psimons@suse.com +Sat Jan 22 17:05:12 UTC 2022 - Peter Simons - Update foundation to version 0.0.26.1 revision 1. Upstream has revised the Cabal build instructions on Hackage.