diff --git a/GHC-signing-key.asc b/GHC-signing-key.asc new file mode 100644 index 0000000000000000000000000000000000000000..07170fe73a721c7a31891964528be9f46c5e106c --- /dev/null +++ b/GHC-signing-key.asc @@ -0,0 +1,63 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Comment: 88B5 7FCF 7DB5 3B4D B3BF A4B1 5887 64FB E22D 19C4 +Comment: Zubin Duggal (GHC signing key) + +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 +7yoq +=MFsx +-----END PGP PUBLIC KEY BLOCK----- diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..b5059b71f60658ae11b33fdc011cb003f5af5b05 --- /dev/null +++ b/LICENSE @@ -0,0 +1,31 @@ +The Glasgow Haskell Compiler License + +Copyright 2002, The University Court of the University of Glasgow. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +- Redistributions of source code must retain the above copyright notice, +this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +- Neither name of the University nor the names of its contributors may be +used to endorse or promote products derived from this software without +specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE UNIVERSITY COURT OF THE UNIVERSITY OF +GLASGOW AND THE CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +UNIVERSITY COURT OF THE UNIVERSITY OF GLASGOW OR THE CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. diff --git a/README.en.md b/README.en.md index 35ca65778847ceb1472281ae7c57e889d8659258..02e9cb14375a7d8ec7e66233686cba8b828a3ab0 100644 --- a/README.en.md +++ b/README.en.md @@ -1,36 +1,13 @@ # ghc-bootstrap #### Description + Binary distributions of The Glorious Glasgow Haskell Compiler #### 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 +This package is only for GHC bootstraping, do not use it for any other purpose. -#### Gitee Feature +This package currently only support X86_64 and AArch64. -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/) +For compiling Haskell Program, using the `ghc` package instead. diff --git a/README.md b/README.md index 8ed1adae21e0c5add8c3df5aa438ba81f146aca1..749f7e2bf128c61fb230b0241676d08a907c3c12 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,13 @@ # ghc-bootstrap #### 介绍 -Binary distributions of The Glorious Glasgow Haskell Compiler -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx +Glorious Glasgow Haskell Compiler 的二进制分发包 -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request +#### 软件架构 +这是用来 bootstrap GHC 的 GHC 二进制软件包。 -#### 特技 +本软件包目前仅提供 X86_64 和 AArch64 的支持,二进制程序来自 GHC 官方网站。 -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/) +请不要在外部使用该软件包,要编译 Haskell 程序,请使用 `ghc` 软件包。 diff --git a/ghc-9.2.3-aarch64-deb10-linux.tar.xz.aa b/ghc-9.2.3-aarch64-deb10-linux.tar.xz.aa new file mode 100644 index 0000000000000000000000000000000000000000..5b92fa5ad0abf2229dac6c1ac5994ea49b51e0f4 Binary files /dev/null and b/ghc-9.2.3-aarch64-deb10-linux.tar.xz.aa differ diff --git a/ghc-9.2.3-aarch64-deb10-linux.tar.xz.ab b/ghc-9.2.3-aarch64-deb10-linux.tar.xz.ab new file mode 100644 index 0000000000000000000000000000000000000000..d40857b4b561cf899c9bdc99adfd320a837b5318 Binary files /dev/null and b/ghc-9.2.3-aarch64-deb10-linux.tar.xz.ab differ diff --git a/ghc-9.2.3-aarch64-deb10-linux.tar.xz.ac b/ghc-9.2.3-aarch64-deb10-linux.tar.xz.ac new file mode 100644 index 0000000000000000000000000000000000000000..9a1850088d4cec891cb3e2f4e5ff8798ae612469 Binary files /dev/null and b/ghc-9.2.3-aarch64-deb10-linux.tar.xz.ac differ diff --git a/ghc-9.2.3-aarch64-deb10-linux.tar.xz.sig b/ghc-9.2.3-aarch64-deb10-linux.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000..208de98296628a27b578f6d98bc6522224eb4ded Binary files /dev/null and b/ghc-9.2.3-aarch64-deb10-linux.tar.xz.sig differ diff --git a/ghc-9.2.3-x86_64-deb10-linux.tar.xz.aa b/ghc-9.2.3-x86_64-deb10-linux.tar.xz.aa new file mode 100644 index 0000000000000000000000000000000000000000..449e7c264adb376d070b8b45afad2b3a37c3a23b Binary files /dev/null and b/ghc-9.2.3-x86_64-deb10-linux.tar.xz.aa differ diff --git a/ghc-9.2.3-x86_64-deb10-linux.tar.xz.ab b/ghc-9.2.3-x86_64-deb10-linux.tar.xz.ab new file mode 100644 index 0000000000000000000000000000000000000000..f449635ac0d1d0462356cabdb1892f3ac8e2fdda Binary files /dev/null and b/ghc-9.2.3-x86_64-deb10-linux.tar.xz.ab differ diff --git a/ghc-9.2.3-x86_64-deb10-linux.tar.xz.ac b/ghc-9.2.3-x86_64-deb10-linux.tar.xz.ac new file mode 100644 index 0000000000000000000000000000000000000000..2a37dd2964e7bed5b0ef2a24dfb31d07673bcb5b Binary files /dev/null and b/ghc-9.2.3-x86_64-deb10-linux.tar.xz.ac differ diff --git a/ghc-9.2.3-x86_64-deb10-linux.tar.xz.sig b/ghc-9.2.3-x86_64-deb10-linux.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000..1467cb8d130acccc9f46082d2949736ee9ffa679 Binary files /dev/null and b/ghc-9.2.3-x86_64-deb10-linux.tar.xz.sig differ diff --git a/ghc-bootstrap.spec b/ghc-bootstrap.spec new file mode 100644 index 0000000000000000000000000000000000000000..a4021031b766a3bd61f2afd43a514a7e334f24fb --- /dev/null +++ b/ghc-bootstrap.spec @@ -0,0 +1,112 @@ +%global ghc_ver 9.2.3 + +%ifarch x86_64 aarch64 +%define sysname deb10 +%endif + +Name: ghc-bootstrap +Version: %{ghc_ver} +Release: 1 +Summary: Binary distributions of The Glorious Glasgow Haskell Compiler +License: BSD-3-Clause +URL: https://downloads.haskell.org/~ghc/%{ghc_ver} +Source0: LICENSE +# This is GHC-signing-key.asc, for checking the integrity of the tarballs. +Source1: https://keys.openpgp.org/vks/v1/by-fingerprint/88B57FCF7DB53B4DB3BFA4B1588764FBE22D19C4#/GHC-signing-key.asc +Source2: https://downloads.haskell.org/~ghc/%{ghc_ver}/ghc-%{ghc_ver}-x86_64-%{sysname}-linux.tar.xz +Source3: https://downloads.haskell.org/~ghc/%{ghc_ver}/ghc-%{ghc_ver}-x86_64-%{sysname}-linux.tar.xz.sig +Source4: https://downloads.haskell.org/~ghc/%{ghc_ver}/ghc-%{ghc_ver}-aarch64-%{sysname}-linux.tar.xz +Source5: https://downloads.haskell.org/~ghc/%{ghc_ver}/ghc-%{ghc_ver}-aarch64-%{sysname}-linux.tar.xz.sig +Source6: ghc-%{ghc_ver}-x86_64-%{sysname}-linux.tar.xz.aa +Source7: ghc-%{ghc_ver}-x86_64-%{sysname}-linux.tar.xz.ab +Source8: ghc-%{ghc_ver}-x86_64-%{sysname}-linux.tar.xz.ac +Source9: ghc-%{ghc_ver}-aarch64-%{sysname}-linux.tar.xz.aa +Source10: ghc-%{ghc_ver}-aarch64-%{sysname}-linux.tar.xz.ab +Source11: ghc-%{ghc_ver}-aarch64-%{sysname}-linux.tar.xz.ac + +BuildRequires: chrpath +BuildRequires: fdupes +BuildRequires: gmp-devel +BuildRequires: libffi +BuildRequires: libatomic +BuildRequires: ncurses-libs +BuildRequires: pkgconfig +BuildRequires: pkgconfig(libffi) +BuildRequires: numactl-devel +BuildRequires: gnupg2 +BuildRequires: tar +BuildRequires: xz +Requires: gmp-devel +Requires: libffi +Requires: libatomic +Requires: ncurses-libs +Requires: pkgconfig(libffi) +Requires: numactl-devel +Requires: libffi-devel + +Conflicts: ghc-base +Provides: ghc-bootstrap-devel +ExclusiveArch: x86_64 aarch64 +AutoReq: off + +%description +This package contains a binary distribution of The Glorious Glasgow +Haskell Compilation System. + +The tarballs come from the ghc download page. +This package is only used for bootstraping ghc. + +Do not install this package! Install 'ghc' instead. + +%prep +cd ../SOURCES +cat %{SOURCE6} %{SOURCE7} %{SOURCE8} > %{SOURCE2} +cat %{SOURCE9} %{SOURCE10} %{SOURCE11} > %{SOURCE4} +cd ../BUILD + +cp %{SOURCE0} . +cp %{SOURCE1} . +cp %{SOURCE2} . +cp %{SOURCE3} . +cp %{SOURCE4} . +cp %{SOURCE5} . + +# To avoid malicious tampering, checking the integrity of the upstream tarballs. +gpg --import %{SOURCE1} +gpg --verify ghc-%{version}-%{_arch}-%{sysname}-linux.tar.xz.sig ghc-%{version}-%{_arch}-%{sysname}-linux.tar.xz + +tar Jxf ghc-%{version}-%{_arch}-%{sysname}-linux.tar.xz + +%build + +%install +cd ghc-%{version} +./configure --prefix=/opt +%make_install + +%post +/opt/bin/ghc-pkg recache + +%files +%license LICENSE +/opt/bin/ghc +/opt/bin/ghc-%{version} +/opt/bin/ghci +/opt/bin/ghci-%{version} +/opt/bin/ghc-pkg +/opt/bin/ghc-pkg-%{version} +/opt/bin/haddock +/opt/bin/haddock-ghc-%{version} +/opt/bin/hp2ps +/opt/bin/hpc +/opt/bin/hsc2hs +/opt/bin/runghc +/opt/bin/runghc-%{version} +/opt/bin/runhaskell +/opt/lib/ghc-%{version}/* +/opt/share/doc/ghc-%{version}/* +/opt/share/man/man1/ghc.1 + +%changelog +* Tue Nov 14 2023 Lin Runze - 9.2.3-1 +- Initial packaging.