From 0ce49ff8a7d90604c8141e40c150f9efa84592cb Mon Sep 17 00:00:00 2001 From: Raboneko <119771935+raboneko@users.noreply.github.com> Date: Mon, 27 Apr 2026 19:42:06 -0500 Subject: [PATCH] add: ghc-language-bluespec (#11681) (#11698) --- .../haskell/ghc-language-bluespec/anda.hcl | 5 + .../ghc-language-bluespec.spec | 127 ++++++++++++++++++ .../haskell/ghc-language-bluespec/update.rhai | 1 + 3 files changed, 133 insertions(+) create mode 100644 anda/langs/haskell/ghc-language-bluespec/anda.hcl create mode 100644 anda/langs/haskell/ghc-language-bluespec/ghc-language-bluespec.spec create mode 100644 anda/langs/haskell/ghc-language-bluespec/update.rhai diff --git a/anda/langs/haskell/ghc-language-bluespec/anda.hcl b/anda/langs/haskell/ghc-language-bluespec/anda.hcl new file mode 100644 index 0000000000..6234b99a7a --- /dev/null +++ b/anda/langs/haskell/ghc-language-bluespec/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "ghc-language-bluespec.spec" + } +} diff --git a/anda/langs/haskell/ghc-language-bluespec/ghc-language-bluespec.spec b/anda/langs/haskell/ghc-language-bluespec/ghc-language-bluespec.spec new file mode 100644 index 0000000000..5b21bc0714 --- /dev/null +++ b/anda/langs/haskell/ghc-language-bluespec/ghc-language-bluespec.spec @@ -0,0 +1,127 @@ +# generated by cabal-rpm-2.3.2 +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ + +%global pkg_name language-bluespec +%global pkgver %{pkg_name}-%{version} +%{?haskell_setup} + +Name: ghc-%{pkg_name} +Version: 0.1 +Release: 1%{?dist} +Summary: An implementation of the Bluespec Haskell AST + +License: BSD-3-Clause +URL: https://hackage.haskell.org/package/language-bluespec +# Begin cabal-rpm sources: +Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkgver}/%{pkg_name}.cabal#/%{pkgver}.cabal +# End cabal-rpm sources + +# Begin cabal-rpm deps: +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-containers-devel +BuildRequires: ghc-pretty-devel +BuildRequires: ghc-text-devel +%if %{with ghc_prof} +BuildRequires: ghc-base-prof +BuildRequires: ghc-containers-prof +BuildRequires: ghc-pretty-prof +BuildRequires: ghc-text-prof +%endif +# End cabal-rpm deps + +Packager: Owen Zimmerman + +%description +This package contains an implementation of the language's AST. In particular, this implements the Bluespec Haskell +(BH) syntax, also known as Bluespec Classic. We may add support for the +Bluespec SystemVerilog (BSV) syntax at a later date. To our knowledge, there is +no formal grammar that describes the syntax of BH or BSV, so this package is +based off of the code in the . Although the Bluespec compiler is written in Haskell, it is not +particularly simple to depend on the compiler as a library, so this package +exists to extract out the relevant compiler code into a simple-to-use library. + + +%package devel +Summary: Haskell %{pkg_name} library development files +Provides: %{name}-static = %{version}-%{release} +Provides: %{name}-static%{?_isa} = %{version}-%{release} +%if %{defined ghc_version} +Requires: ghc-compiler = %{ghc_version} +%endif +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package provides the Haskell %{pkg_name} library development +files. + + +%if %{with haddock} +%package doc +Summary: Haskell %{pkg_name} library documentation +BuildArch: noarch +Requires: ghc-filesystem + +%description doc +This package provides the Haskell %{pkg_name} library documentation. +%endif + + +%if %{with ghc_prof} +%package prof +Summary: Haskell %{pkg_name} profiling library +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +Supplements: (%{name}-devel and ghc-prof) + +%description prof +This package provides the Haskell %{pkg_name} profiling library. +%endif + + +%prep +# Begin cabal-rpm setup: +%setup -q -n %{pkgver} +cp -bp %{SOURCE1} %{pkg_name}.cabal +# End cabal-rpm setup + + +%build +# Begin cabal-rpm build: +%ghc_lib_build +# End cabal-rpm build + + +%install +# Begin cabal-rpm install +%ghc_lib_install +# End cabal-rpm install + + +%files -f %{name}.files +# Begin cabal-rpm files: +%license LICENSE +# End cabal-rpm files + + +%files devel -f %{name}-devel.files +%doc CHANGELOG.md README.md + + +%if %{with haddock} +%files doc -f %{name}-doc.files +%license LICENSE +%endif + + +%if %{with ghc_prof} +%files prof -f %{name}-prof.files +%endif + + +%changelog +* Tue Apr 28 2026 Owen Zimmerman - 0.1-1 +- Initial Commit diff --git a/anda/langs/haskell/ghc-language-bluespec/update.rhai b/anda/langs/haskell/ghc-language-bluespec/update.rhai new file mode 100644 index 0000000000..1cddac58c3 --- /dev/null +++ b/anda/langs/haskell/ghc-language-bluespec/update.rhai @@ -0,0 +1 @@ +rpm.version(hackage("language-bluespec"));