## START: Set by rpmautospec ## (rpmautospec version 0.7.2) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 17; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec # generated by cabal-rpm-2.2.1 # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ %global pkg_name idris %global pkgver %{pkg_name}-%{version} %{?haskell_setup} %ifarch armv7hl %undefine with_ghc_prof %endif # testsuite missing deps: tasty-golden Name: %{pkg_name} Version: 1.3.4 Release: %autorelease Summary: Functional Programming Language with Dependent Types License: BSD-3-Clause Url: https://hackage.haskell.org/package/%{name} # Begin cabal-rpm sources: Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz # End cabal-rpm sources Patch0: https://patch-diff.githubusercontent.com/raw/idris-lang/Idris-dev/pull/4920.patch Patch1: https://patch-diff.githubusercontent.com/raw/idris-lang/Idris-dev/pull/4921.patch Patch2: https://patch-diff.githubusercontent.com/raw/idris-lang/Idris-dev/pull/4922.patch Patch3: https://patch-diff.githubusercontent.com/raw/idris-lang/Idris-dev/pull/4925.patch Patch4: https://patch-diff.githubusercontent.com/raw/idris-lang/Idris-dev/pull/4926.patch # Begin cabal-rpm deps: BuildRequires: ghc-Cabal-devel BuildRequires: ghc-rpm-macros BuildRequires: ghc-aeson-devel BuildRequires: ghc-annotated-wl-pprint-devel BuildRequires: ghc-ansi-terminal-devel BuildRequires: ghc-ansi-wl-pprint-devel BuildRequires: ghc-array-devel BuildRequires: ghc-async-devel BuildRequires: ghc-base-devel BuildRequires: ghc-base64-bytestring-devel BuildRequires: ghc-binary-devel BuildRequires: ghc-blaze-html-devel BuildRequires: ghc-blaze-markup-devel BuildRequires: ghc-bytestring-devel BuildRequires: ghc-cheapskate-devel BuildRequires: ghc-code-page-devel BuildRequires: ghc-containers-devel BuildRequires: ghc-deepseq-devel BuildRequires: ghc-directory-devel BuildRequires: ghc-filepath-devel BuildRequires: ghc-fingertree-devel BuildRequires: ghc-fsnotify-devel BuildRequires: ghc-haskeline-devel BuildRequires: ghc-ieee754-devel BuildRequires: ghc-libffi-devel BuildRequires: ghc-megaparsec-devel BuildRequires: ghc-mtl-devel BuildRequires: ghc-network-devel BuildRequires: ghc-optparse-applicative-devel BuildRequires: ghc-parser-combinators-devel BuildRequires: ghc-pretty-devel BuildRequires: ghc-process-devel BuildRequires: ghc-regex-tdfa-devel BuildRequires: ghc-safe-devel BuildRequires: ghc-split-devel BuildRequires: ghc-terminal-size-devel BuildRequires: ghc-text-devel BuildRequires: ghc-time-devel BuildRequires: ghc-transformers-devel BuildRequires: ghc-uniplate-devel BuildRequires: ghc-unix-devel BuildRequires: ghc-unordered-containers-devel BuildRequires: ghc-utf8-string-devel BuildRequires: ghc-vector-devel BuildRequires: ghc-vector-binary-instances-devel BuildRequires: ghc-zip-archive-devel %if %{with ghc_prof} BuildRequires: ghc-aeson-prof BuildRequires: ghc-annotated-wl-pprint-prof BuildRequires: ghc-ansi-terminal-prof BuildRequires: ghc-ansi-wl-pprint-prof BuildRequires: ghc-array-prof BuildRequires: ghc-async-prof BuildRequires: ghc-base-prof BuildRequires: ghc-base64-bytestring-prof BuildRequires: ghc-binary-prof BuildRequires: ghc-blaze-html-prof BuildRequires: ghc-blaze-markup-prof BuildRequires: ghc-bytestring-prof BuildRequires: ghc-cheapskate-prof BuildRequires: ghc-code-page-prof BuildRequires: ghc-containers-prof BuildRequires: ghc-deepseq-prof BuildRequires: ghc-directory-prof BuildRequires: ghc-filepath-prof BuildRequires: ghc-fingertree-prof BuildRequires: ghc-fsnotify-prof BuildRequires: ghc-haskeline-prof BuildRequires: ghc-ieee754-prof BuildRequires: ghc-libffi-prof BuildRequires: ghc-megaparsec-prof BuildRequires: ghc-mtl-prof BuildRequires: ghc-network-prof BuildRequires: ghc-optparse-applicative-prof BuildRequires: ghc-parser-combinators-prof BuildRequires: ghc-pretty-prof BuildRequires: ghc-process-prof BuildRequires: ghc-regex-tdfa-prof BuildRequires: ghc-safe-prof BuildRequires: ghc-split-prof BuildRequires: ghc-terminal-size-prof BuildRequires: ghc-text-prof BuildRequires: ghc-time-prof BuildRequires: ghc-transformers-prof BuildRequires: ghc-uniplate-prof BuildRequires: ghc-unix-prof BuildRequires: ghc-unordered-containers-prof BuildRequires: ghc-utf8-string-prof BuildRequires: ghc-vector-prof BuildRequires: ghc-vector-binary-instances-prof BuildRequires: ghc-zip-archive-prof %endif BuildRequires: gmp-devel BuildRequires: help2man Requires: %{name}-common = %{version}-%{release} # End cabal-rpm deps BuildRequires: gc-devel # needs sphinx-build BuildRequires: python3-sphinx ## idris compiles to C and then uses gcc linking to the static rts library ## to generate executables (so devel files are included in the main package) Requires: gcc Requires: gmp-devel Requires: %{name}-static = %{version}-%{release} %description Idris is a general purpose language with full dependent types. It is compiled, with eager evaluation. Dependent types allow types to be predicated on values, meaning that some aspects of a program's behaviour can be specified precisely in the type. The language is closely related to Epigram and Agda. There is a tutorial at . Features include: * Full, first class, dependent types with dependent pattern matching * where clauses, with rule, case expressions, pattern matching let and lambda bindings * Interfaces (similar to type classes), monad comprehensions * do notation, idiom brackets, syntactic conveniences for lists, tuples, dependent pairs * Totality checking * Coinductive types * Indentation significant syntax, extensible syntax * Cumulative universes * Simple foreign function interface (to C) * Hugs style interactive environment. %package common Summary: Idris libraries BuildArch: noarch %description common This package provides the Idris libraries development files. %package static Summary: Idris RTS %description static This package provides the Idris RTS. %package -n ghc-%{name} Summary: Haskell %{name} library Requires: %{name}-common = %{version}-%{release} Requires: %{name}-static = %{version}-%{release} %description -n ghc-%{name} This package provides the Haskell %{name} shared library. %package -n ghc-%{name}-devel Summary: Haskell %{name} library development files Provides: ghc-%{name}-static = %{version}-%{release} Provides: ghc-%{name}-static%{?_isa} = %{version}-%{release} %if %{defined ghc_version} Requires: ghc-compiler = %{ghc_version} %endif Requires: ghc-%{name}%{?_isa} = %{version}-%{release} # Begin cabal-rpm deps: Requires: gmp-devel%{?_isa} # End cabal-rpm deps %description -n ghc-%{name}-devel This package provides the Haskell %{name} library development files. %package docs Summary: Idris library docs BuildArch: noarch %description docs This package provides the library docs for the Idris programming language. %package manual Summary: The Idris manual BuildArch: noarch %description manual This package provides the manual for the Idris programming language. %if %{with haddock} %package -n ghc-%{name}-doc Summary: Haskell %{name} library documentation BuildArch: noarch Requires: ghc-filesystem %description -n ghc-%{name}-doc This package provides the Haskell %{name} library documentation. %endif %if %{with ghc_prof} %package -n ghc-%{name}-prof Summary: Haskell %{name} profiling library Requires: ghc-%{name}-devel%{?_isa} = %{version}-%{release} Supplements: (ghc-%{name}-devel and ghc-prof) %description -n ghc-%{name}-prof This package provides the Haskell %{name} profiling library. %endif %prep # Begin cabal-rpm setup: %setup -q %autopatch -p1 # End cabal-rpm setup cabal-tweak-dep-ver optparse-applicative '< 0.18' '< 0.19' cabal-tweak-flag FFI True cabal-tweak-flag GMP True cabal-tweak-dep-ver ansi-wl-pprint '< 0.7' '< 1.1' %build export LD_LIBRARY_PATH=$PWD/dist/build # Begin cabal-rpm build: %ghc_lib_build # End cabal-rpm build %install export LD_LIBRARY_PATH=$PWD/dist/build # Begin cabal-rpm install %ghc_lib_install mv %{buildroot}%{_ghcdocdir}{,-common} set noclobber mkdir -p %{buildroot}%{bash_completions_dir} %{buildroot}%{_bindir}/%{name} --bash-completion-script %{name} | sed s/filenames/default/ > %{buildroot}%{bash_completions_dir}/%{name} %{buildroot}%{_bindir}/idris-codegen-c --bash-completion-script idris-codegen-c | sed s/filenames/default/ > %{buildroot}%{bash_completions_dir}/idris-codegen-c %{buildroot}%{_bindir}/idris-codegen-javascript --bash-completion-script idris-codegen-javascript | sed s/filenames/default/ > %{buildroot}%{bash_completions_dir}/idris-codegen-javascript %{buildroot}%{_bindir}/idris-codegen-node --bash-completion-script idris-codegen-node | sed s/filenames/default/ > %{buildroot}%{bash_completions_dir}/idris-codegen-node mkdir -p %{buildroot}%{_mandir}/man1/ help2man --no-info %{buildroot}%{_bindir}/%{name} > %{buildroot}%{_mandir}/man1/%{name}.1 help2man --no-info %{buildroot}%{_bindir}/idris-codegen-c > %{buildroot}%{_mandir}/man1/idris-codegen-c.1 help2man --no-info %{buildroot}%{_bindir}/idris-codegen-javascript > %{buildroot}%{_mandir}/man1/idris-codegen-javascript.1 help2man --no-info %{buildroot}%{_bindir}/idris-codegen-node > %{buildroot}%{_mandir}/man1/idris-codegen-node.1 # End cabal-rpm install # https://github.com/idris-lang/Idris-dev/issues/4495 mv %{buildroot}%{_datadir}/%{pkgver}/rts/libidris_rts.a %{buildroot}%{_libdir} # https://github.com/idris-lang/Idris-dev/issues/4497 chmod +r -R %{buildroot}%{_datadir}/%{pkgver}/docs mkdir -p %{buildroot}%{_docdir}/idris-manual cp -p idris-tutorial.pdf %{buildroot}%{_docdir}/idris-manual/ %files # Begin cabal-rpm files: %{_bindir}/%{name} %{_bindir}/idris-codegen-c %{_bindir}/idris-codegen-javascript %{_bindir}/idris-codegen-node %{bash_completions_dir}/%{name} %{bash_completions_dir}/idris-codegen-c %{bash_completions_dir}/idris-codegen-javascript %{bash_completions_dir}/idris-codegen-node %{_mandir}/man1/%{name}.1* %{_mandir}/man1/idris-codegen-c.1* %{_mandir}/man1/idris-codegen-javascript.1* %{_mandir}/man1/idris-codegen-node.1* # End cabal-rpm files %{_mandir}/man1/idris.1* %files common # Begin cabal-rpm files: %license LICENSE %doc CHANGELOG.md CONTRIBUTING.md CONTRIBUTORS README.md %{_datadir}/%{pkgver} # End cabal-rpm files %exclude %{_datadir}/%{pkgver}/docs %files docs %dir %{_datadir}/%{pkgver} %{_datadir}/%{pkgver}/docs %files manual %{_docdir}/idris-manual %files static %attr(644, -, -) %{_libdir}/libidris_rts.a %files -n ghc-%{name} -f ghc-%{name}.files %files -n ghc-%{name}-devel -f ghc-%{name}-devel.files %if %{with haddock} %files -n ghc-%{name}-doc -f ghc-%{name}-doc.files %license LICENSE %endif %if %{with ghc_prof} %files -n ghc-%{name}-prof -f ghc-%{name}-prof.files %endif %changelog ## START: Generated by rpmautospec * Fri Aug 02 2024 Jens Petersen - 1.3.4-17 - update mtl and bounds with upstream patches * Thu Jul 18 2024 Fedora Release Engineering - 1.3.4-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Tue Jul 16 2024 Jens Petersen - 1.3.4-15 - refresh to cabal-rpm-2.2.1 * Wed Jan 24 2024 Fedora Release Engineering - 1.3.4-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sat Jan 20 2024 Fedora Release Engineering - 1.3.4-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Wed Jul 26 2023 Jens Petersen - 1.3.4-12 - bump upper bounds * Thu Jul 20 2023 Fedora Release Engineering - 1.3.4-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Fri Feb 17 2023 Jens Petersen - 1.3.4-6 - refresh to cabal-rpm-2.1.0 with SPDX migration * Thu Jul 21 2022 Fedora Release Engineering - 1.3.4-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Fri Jun 17 2022 Jens Petersen - 1.3.4-4 - rebuild * Thu Jan 20 2022 Fedora Release Engineering - 1.3.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Sat Jan 08 2022 Miro HronĨok - 1.3.4-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34 * Mon Oct 25 2021 Jens Petersen - 1.3.4-1 - update to new stable release - https://hackage.haskell.org/package/idris-1.3.4/changelog * Sun Aug 22 2021 Jens Petersen - 1.3.3-6.20210626git2ef8238d0 - update to latest git, which builds with ghc-8.10 (#1991878) * Fri Aug 06 2021 Jens Petersen - 1.3.3-5 - rebuild * Thu Jul 22 2021 Fedora Release Engineering - 1.3.3-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Tue Jan 26 2021 Fedora Release Engineering - 1.3.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Aug 10 2020 Jens Petersen - 1.3.3-2 - setup bash completion * Tue Jul 28 2020 Fedora Release Engineering - 1.3.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Wed Jun 10 2020 Jens Petersen - 1.3.3-1 - update to 1.3.3 * Thu Feb 20 2020 Jens Petersen - 1.3.2-3 - refresh to cabal-rpm-2.0.2 * Wed Jan 29 2020 Fedora Release Engineering - 1.3.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Thu Jul 25 2019 Jens Petersen - 1.3.2-1 - update to 1.3.2 * Thu Jul 25 2019 Fedora Release Engineering - 1.3.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sun Mar 17 2019 Jens Petersen - 1.3.1-2 - use python3-sphinx * Thu Feb 21 2019 Jens Petersen - 1.3.1-1 - update to 1.3.1 * Fri Feb 01 2019 Fedora Release Engineering - 1.3.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Wed Oct 24 2018 Jens Petersen - 1.3.0-6 - rebuild for static executable - move library html docs to subpackage * Sat Jul 28 2018 Jens Petersen - 1.3.0-5 - rebuild * Sat Jun 30 2018 Jens Petersen - 1.3.0-4 - BR python2-sphinx for sphinx-build (#1594765) - install the manual in the buildroot * Tue Jun 26 2018 Jens Petersen - 1.3.0-3 - build with libffi and gmp - build the manual with python-sphinx - noarch subpackages for manual and libs - make lib docs readable - install libidris_rts.a in libdir * Tue Jun 26 2018 Jens Petersen - 1.3.0-2 - builds on armv7hl without prof lib * Mon Jun 25 2018 Jens Petersen - 1.3.0-1 - update to 1.3.0 * Thu Jul 28 2016 Jens Petersen - 0.9.9.1-8 - require gmp-devel (#1360168) * Thu Feb 04 2016 Fedora Release Engineering - 0.9.9.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Wed Jun 17 2015 Fedora Release Engineering - 0.9.9.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Mon Apr 6 2015 Jens Petersen - 0.9.9.1-5 - rebuild * Wed Jan 28 2015 Jens Petersen - 0.9.9.1-4 - cblrpm refresh - fix build with ghc78 - temporarily exclude armv7hl until RTS issues resolved (#1190261) * Sat Aug 16 2014 Fedora Release Engineering - 0.9.9.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Sat Jun 07 2014 Fedora Release Engineering - 0.9.9.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sat Oct 5 2013 Jens Petersen - 0.9.9.1-1 - update to 0.9.9.1 - depends on ansi-terminal and time * Fri Oct 4 2013 Jens Petersen - 0.9.9-1 - update to 0.9.9 http://www.idris-lang.org/idris-0-9-9-released/ - disable LLVM backend for now - depends on vector-binary-instances - buildrequires gc-devel * Sat Aug 03 2013 Fedora Release Engineering - 0.9.8-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Tue Jul 9 2013 Jens Petersen - 0.9.8-3 - use cabal_configure_extra_options to set datadir (#947819) - add a comment about the devel files in the main package (#947819) * Mon Jul 8 2013 Jens Petersen - 0.9.8-2 - install idris devel data files under libdir (#947819) * Mon Jul 1 2013 Jens Petersen - 0.9.8-1 - update to 0.9.8 - http://idris-lang.org/archives/272 * Sat Apr 6 2013 Jens Petersen - 0.9.7-2 - requires gcc * Wed Apr 3 2013 Jens Petersen - 0.9.7-1 - spec file regenerated with cabal-rpm-0.8.0 * Sat Feb 25 2012 Jens Petersen - 0.9.1-1 - update to 0.9.1 * Fri Jan 27 2012 Jens Petersen - 0.9.0-1 - BSD license * Fri Jan 27 2012 Fedora Haskell SIG - spec file template generated by cabal2spec-0.25.4 ## END: Generated by rpmautospec