diff --git a/README.en.md b/README.en.md index 98fe435775c1eed2835c673e710c49f4307b714b..38957761fcde4e01d35b552300671122fd7ef2c0 100644 --- a/README.en.md +++ b/README.en.md @@ -2,35 +2,3 @@ #### Description Compression and decompression in the gzip and zlib formats - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md index fcf544dff04a166107fddd9a8c73e7fc5f1ef6cf..4299864b84daf1b30d145fbf91e75b845209977e 100644 --- a/README.md +++ b/README.md @@ -2,36 +2,3 @@ #### 介绍 Compression and decompression in the gzip and zlib formats - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/ghc-zlib.spec b/ghc-zlib.spec new file mode 100644 index 0000000000000000000000000000000000000000..b4b9b36edc997f365ea4f6364054897890194251 --- /dev/null +++ b/ghc-zlib.spec @@ -0,0 +1,98 @@ +%global pkg_name zlib +%global pkgver %{pkg_name}-%{version} +%bcond_with tests + +Name: ghc-%{pkg_name} +Version: 0.6.3.0 +Release: 1 +Summary: Compression and decompression in the gzip and zlib formats +License: BSD-2-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/4.cabal#/%{pkg_name}.cabal +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-base-prof +BuildRequires: ghc-bytestring-devel +BuildRequires: ghc-bytestring-prof +BuildRequires: ghc-rpm-macros +BuildRequires: zlib-devel +ExcludeArch: %{ix86} +%if %{with tests} +BuildRequires: ghc-QuickCheck-devel +BuildRequires: ghc-QuickCheck-prof +BuildRequires: ghc-tasty-devel +BuildRequires: ghc-tasty-prof +BuildRequires: ghc-tasty-quickcheck-devel +BuildRequires: ghc-tasty-quickcheck-prof +%endif + +%description +This package provides a pure interface for compressing and decompressing +streams of data represented as lazy 'ByteString's. It uses the + so it has high performance. +It supports the "zlib", "gzip" and "raw" compression formats. + +It provides a convenient high level API suitable for most tasks and for the few +cases where more control is needed it provides access to the full zlib feature +set. + +%package devel +Summary: Haskell %{pkg_name} library development files +Requires: %{name} = %{version}-%{release} +Requires: ghc-compiler = %{ghc_version} +Requires: zlib-devel +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 examples + +%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 +* Thu Sep 28 2023 Lin Runze 0.6.3.0-1 +- Initial packaging (Version 0.6.3.0) diff --git a/zlib-0.6.3.0.tar.gz b/zlib-0.6.3.0.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..053d4b6683959268e4f27b53c4d2ab0960adf463 Binary files /dev/null and b/zlib-0.6.3.0.tar.gz differ diff --git a/zlib.cabal b/zlib.cabal new file mode 100644 index 0000000000000000000000000000000000000000..ccb9f39deae6da52ecb643133de7926484cd0a6e --- /dev/null +++ b/zlib.cabal @@ -0,0 +1,140 @@ +cabal-version: >= 1.10 +name: zlib +version: 0.6.3.0 +x-revision: 4 + +copyright: (c) 2006-2016 Duncan Coutts +license: BSD3 +license-file: LICENSE +author: Duncan Coutts +maintainer: Duncan Coutts , Andrew Lelechenko , Emily Pillmore , Herbert Valerio Riedel +bug-reports: https://github.com/haskell/zlib/issues +category: Codec +synopsis: Compression and decompression in the gzip and zlib formats +description: This package provides a pure interface for compressing and + decompressing streams of data represented as lazy + 'ByteString's. It uses the + + so it has high performance. It supports the \"zlib\", + \"gzip\" and \"raw\" compression formats. + . + It provides a convenient high level API suitable for most + tasks and for the few cases where more control is needed it + provides access to the full zlib feature set. +build-type: Simple + +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.8 + , GHC == 9.4.7 + , GHC == 9.6.3 + , GHC == 9.8.1 + +extra-source-files: changelog + README.md + -- zlib C sources (for Windows) + cbits/crc32.h cbits/inffast.h cbits/inflate.h + cbits/trees.h cbits/deflate.h cbits/inffixed.h + cbits/inftrees.h cbits/zutil.h cbits/gzguts.h + -- test data files + test/data/bad-crc.gz test/data/custom-dict.zlib + test/data/custom-dict.zlib-dict test/data/hello.gz + test/data/not-gzip test/data/two-files.gz + -- demo programs: + examples/gzip.hs examples/gunzip.hs + +source-repository head + type: git + location: https://github.com/haskell/zlib.git + +flag non-blocking-ffi + default: False + manual: True + description: The (de)compression calls can sometimes take a long time, which + prevents other Haskell threads running. Enabling this flag + avoids this unfairness, but with greater overall cost. + +flag pkg-config + default: False + manual: True + description: Use @pkg-config(1)@ to locate foreign @zlib@ library. + +flag bundled-c-zlib + default: False + manual: True + description: Use the bundled zlib C sources. Requires pkg-config to be False. + For windows, this is the default. + + +library + exposed-modules: Codec.Compression.GZip, + Codec.Compression.Zlib, + Codec.Compression.Zlib.Raw, + Codec.Compression.Zlib.Internal + other-modules: Codec.Compression.Zlib.Stream, + Codec.Compression.Zlib.ByteStringCompat + + if impl(ghc < 7) + default-language: Haskell98 + default-extensions: PatternGuards + else + default-language: Haskell2010 + + other-extensions: CPP, ForeignFunctionInterface, RankNTypes, BangPatterns, + DeriveDataTypeable + if impl(ghc >= 7.2) + other-extensions: DeriveGeneric + if impl(ghc >= 7.6) + other-extensions: CApiFFI + + build-depends: base >= 4 && < 4.20, + bytestring >= 0.9 && < 0.13 + if impl(ghc >= 7.0 && < 8.0.3) + build-depends: ghc-prim + + includes: zlib.h + ghc-options: -Wall -fwarn-tabs + if flag(non-blocking-ffi) + cpp-options: -DNON_BLOCKING_FFI + if flag(pkg-config) && !impl(ghcjs) && !os(ghcjs) + -- NB: pkg-config is available on windows as well when using msys2 + pkgconfig-depends: zlib + else + -- don't use pkg-config + if !os(windows) && !flag(bundled-c-zlib) && !impl(ghcjs) && !os(ghcjs) + -- Normally we use the the standard system zlib. + extra-libraries: z + else + -- However for the benefit of users of Windows (which does not have zlib + -- by default) we bundle a complete copy of the C sources of zlib-1.2.11 + c-sources: cbits/adler32.c cbits/compress.c cbits/crc32.c + cbits/deflate.c cbits/infback.c + cbits/inffast.c cbits/inflate.c cbits/inftrees.c + cbits/trees.c cbits/uncompr.c cbits/zutil.c + include-dirs: cbits + install-includes: zlib.h zconf.h + +test-suite tests + type: exitcode-stdio-1.0 + main-is: Test.hs + other-modules: Utils, + Test.Codec.Compression.Zlib.Internal, + Test.Codec.Compression.Zlib.Stream + hs-source-dirs: test + default-language: Haskell2010 + build-depends: base, bytestring, zlib, + QuickCheck == 2.*, + tasty >= 0.8 && < 1.6, + tasty-quickcheck >= 0.8 && < 0.11 + ghc-options: -Wall