eac7e43
# generated by cabal-rpm-0.12.4
eac7e43
# https://fedoraproject.org/wiki/Packaging:Haskell
eac7e43
eac7e43
%global pkg_name idris
eac7e43
%global pkgver %{pkg_name}-%{version}
eac7e43
eac7e43
%bcond_with tests
eac7e43
abbe1b4
%ifarch armv7hl
abbe1b4
%global without_prof 1
abbe1b4
%endif
abbe1b4
eac7e43
Name:           %{pkg_name}
eac7e43
Version:        1.3.0
b22fcec
Release:        3%{?dist}
eac7e43
Summary:        Functional Programming Language with Dependent Types
eac7e43
eac7e43
License:        BSD
eac7e43
Url:            https://hackage.haskell.org/package/%{name}
eac7e43
Source0:        https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz
eac7e43
eac7e43
BuildRequires:  ghc-Cabal-devel
eac7e43
BuildRequires:  ghc-rpm-macros
eac7e43
# Begin cabal-rpm deps:
eac7e43
BuildRequires:  chrpath
eac7e43
BuildRequires:  ghc-aeson-devel
eac7e43
BuildRequires:  ghc-annotated-wl-pprint-devel
eac7e43
BuildRequires:  ghc-ansi-terminal-devel
eac7e43
BuildRequires:  ghc-ansi-wl-pprint-devel
eac7e43
BuildRequires:  ghc-array-devel
eac7e43
BuildRequires:  ghc-async-devel
eac7e43
BuildRequires:  ghc-base64-bytestring-devel
eac7e43
BuildRequires:  ghc-binary-devel
eac7e43
BuildRequires:  ghc-blaze-html-devel
eac7e43
BuildRequires:  ghc-blaze-markup-devel
eac7e43
BuildRequires:  ghc-bytestring-devel
eac7e43
BuildRequires:  ghc-cheapskate-devel
eac7e43
BuildRequires:  ghc-code-page-devel
eac7e43
BuildRequires:  ghc-containers-devel
eac7e43
BuildRequires:  ghc-deepseq-devel
eac7e43
BuildRequires:  ghc-directory-devel
eac7e43
BuildRequires:  ghc-filepath-devel
eac7e43
BuildRequires:  ghc-fingertree-devel
eac7e43
BuildRequires:  ghc-fsnotify-devel
eac7e43
BuildRequires:  ghc-haskeline-devel
eac7e43
BuildRequires:  ghc-ieee754-devel
b22fcec
BuildRequires:  ghc-libffi-devel
eac7e43
BuildRequires:  ghc-megaparsec-devel
eac7e43
BuildRequires:  ghc-mtl-devel
eac7e43
BuildRequires:  ghc-network-devel
eac7e43
BuildRequires:  ghc-optparse-applicative-devel
eac7e43
BuildRequires:  ghc-pretty-devel
eac7e43
BuildRequires:  ghc-process-devel
eac7e43
BuildRequires:  ghc-regex-tdfa-devel
eac7e43
BuildRequires:  ghc-safe-devel
eac7e43
BuildRequires:  ghc-split-devel
eac7e43
BuildRequires:  ghc-terminal-size-devel
eac7e43
BuildRequires:  ghc-text-devel
eac7e43
BuildRequires:  ghc-time-devel
eac7e43
BuildRequires:  ghc-transformers-devel
eac7e43
BuildRequires:  ghc-uniplate-devel
eac7e43
BuildRequires:  ghc-unix-devel
eac7e43
BuildRequires:  ghc-unordered-containers-devel
eac7e43
BuildRequires:  ghc-utf8-string-devel
eac7e43
BuildRequires:  ghc-vector-binary-instances-devel
eac7e43
BuildRequires:  ghc-vector-devel
eac7e43
BuildRequires:  ghc-zip-archive-devel
b22fcec
BuildRequires:  gmp-devel
eac7e43
%if %{with tests}
eac7e43
BuildRequires:  ghc-tagged-devel
eac7e43
BuildRequires:  ghc-tasty-devel
eac7e43
BuildRequires:  ghc-tasty-golden-devel
eac7e43
BuildRequires:  ghc-tasty-rerun-devel
eac7e43
%endif
eac7e43
# End cabal-rpm deps
eac7e43
BuildRequires:  gc-devel
b22fcec
BuildRequires:  python-sphinx
eac7e43
## idris compiles to C and then uses gcc linking to the static rts library
eac7e43
## to generate executables (so devel files are included in the main package)
eac7e43
Requires:       gcc
eac7e43
Requires:       gmp-devel
eac7e43
eac7e43
%description
eac7e43
Idris is a general purpose language with full dependent types. It is compiled,
eac7e43
with eager evaluation. Dependent types allow types to be predicated on values,
eac7e43
meaning that some aspects of a program's behaviour can be specified precisely
eac7e43
in the type. The language is closely related to Epigram and Agda.
eac7e43
There is a tutorial at <http://www.idris-lang.org/documentation>.
eac7e43
Features include:
eac7e43
eac7e43
* Full, first class, dependent types with dependent pattern matching
eac7e43
* where clauses, with rule, case expressions, pattern matching let and
eac7e43
  lambda bindings
eac7e43
* Interfaces (similar to type classes), monad comprehensions
eac7e43
* do notation, idiom brackets, syntactic conveniences for lists, tuples,
eac7e43
  dependent pairs
eac7e43
* Totality checking
eac7e43
* Coinductive types
eac7e43
* Indentation significant syntax, extensible syntax
eac7e43
* Cumulative universes
eac7e43
* Simple foreign function interface (to C)
eac7e43
* Hugs style interactive environment.
eac7e43
eac7e43
a4da881
%package libs
a4da881
Summary:        Idris libraries
a4da881
BuildArch:      noarch
a4da881
a4da881
%description libs
a4da881
This package provides the Idris library and RTS.
a4da881
a4da881
eac7e43
%package -n ghc-%{name}
eac7e43
Summary:        Haskell %{name} library
a4da881
Requires:       idris-libs = %{version}-%{release}
eac7e43
eac7e43
%description -n ghc-%{name}
eac7e43
This package provides the Haskell %{name} shared library.
eac7e43
eac7e43
eac7e43
%package -n ghc-%{name}-devel
eac7e43
Summary:        Haskell %{name} library development files
eac7e43
Provides:       ghc-%{name}-static = %{version}-%{release}
eac7e43
Provides:       ghc-%{name}-doc = %{version}-%{release}
eac7e43
%if %{defined ghc_version}
eac7e43
Requires:       ghc-compiler = %{ghc_version}
eac7e43
Requires(post): ghc-compiler = %{ghc_version}
eac7e43
Requires(postun): ghc-compiler = %{ghc_version}
eac7e43
%endif
eac7e43
Requires:       ghc-%{name}%{?_isa} = %{version}-%{release}
eac7e43
eac7e43
%description -n ghc-%{name}-devel
eac7e43
This package provides the Haskell %{name} library development files.
eac7e43
eac7e43
a4da881
%package manual
a4da881
Summary:        The Idris manual
a4da881
BuildArch:      noarch
a4da881
a4da881
%description manual
a4da881
This package provides the manual for the idris programming language.
a4da881
a4da881
eac7e43
%prep
eac7e43
%setup -q
b22fcec
cabal-tweak-flag FFI True
b22fcec
cabal-tweak-flag GMP True
eac7e43
eac7e43
eac7e43
%build
eac7e43
export LD_LIBRARY_PATH=$PWD/dist/build
eac7e43
%ghc_lib_build
b22fcec
make user_doc_html
eac7e43
eac7e43
eac7e43
%install
eac7e43
export LD_LIBRARY_PATH=$PWD/dist/build
eac7e43
%ghc_lib_install
eac7e43
%ghc_fix_rpath %{pkgver}
a4da881
mv %{buildroot}%{_ghclicensedir}/%{name}{,-libs}
a4da881
# https://github.com/idris-lang/Idris-dev/issues/4495
a4da881
mv %{buildroot}%{_datadir}/%{pkgver}/rts/libidris_rts.a %{buildroot}%{_libdir}
a4da881
a4da881
# https://github.com/idris-lang/Idris-dev/issues/4497
a4da881
chmod +r -R %{buildroot}%{_datadir}/%{pkgver}/docs
eac7e43
eac7e43
eac7e43
%check
eac7e43
%cabal_test
eac7e43
eac7e43
eac7e43
%post -n ghc-%{name}-devel
eac7e43
%ghc_pkg_recache
eac7e43
eac7e43
eac7e43
%postun -n ghc-%{name}-devel
eac7e43
%ghc_pkg_recache
eac7e43
eac7e43
eac7e43
%files
a4da881
%doc CHANGELOG.md CONTRIBUTORS README.md
eac7e43
%{_bindir}/%{name}
eac7e43
%{_bindir}/idris-codegen-c
eac7e43
%{_bindir}/idris-codegen-javascript
eac7e43
%{_bindir}/idris-codegen-node
eac7e43
%{_mandir}/man1/idris.1*
eac7e43
eac7e43
a4da881
%files libs
eac7e43
%license LICENSE
a4da881
%{_datadir}/%{pkgver}
a4da881
a4da881
a4da881
%files -n ghc-%{name} -f ghc-%{name}.files
a4da881
%attr(644, -, -) %{_libdir}/libidris_rts.a
eac7e43
eac7e43
eac7e43
%files -n ghc-%{name}-devel -f ghc-%{name}-devel.files
eac7e43
eac7e43
a4da881
%files manual
a4da881
%doc docs/_build/html
a4da881
a4da881
eac7e43
%changelog
b22fcec
* Tue Jun 26 2018 Jens Petersen <petersen@redhat.com> - 1.3.0-3
b22fcec
- build with libffi and gmp
b22fcec
- build the manual with python-sphinx
a4da881
- noarch subpackages for manual and libs
a4da881
- make lib docs readable
a4da881
- install libidris_rts.a in libdir
b22fcec
abbe1b4
* Tue Jun 26 2018 Jens Petersen <petersen@redhat.com> - 1.3.0-2
abbe1b4
- builds on armv7hl without prof lib
abbe1b4
eac7e43
* Mon Jun 25 2018 Jens Petersen <petersen@redhat.com> - 1.3.0-1
eac7e43
- update to 1.3.0
eac7e43
eac7e43
* Thu Jul 28 2016 Jens Petersen <petersen@redhat.com> - 0.9.9.1-8
eac7e43
- require gmp-devel (#1360168)
eac7e43
eac7e43
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.9.9.1-7
eac7e43
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
eac7e43
eac7e43
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.9.1-6
eac7e43
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
eac7e43
eac7e43
* Mon Apr  6 2015 Jens Petersen <petersen@redhat.com> - 0.9.9.1-5
eac7e43
- rebuild
eac7e43
eac7e43
* Wed Jan 28 2015 Jens Petersen <petersen@redhat.com> - 0.9.9.1-4
eac7e43
- cblrpm refresh
eac7e43
- fix build with ghc78
eac7e43
- temporarily exclude armv7hl until RTS issues resolved (#1190261)
eac7e43
eac7e43
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.9.1-3
eac7e43
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
eac7e43
eac7e43
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.9.1-2
eac7e43
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
eac7e43
eac7e43
* Sat Oct  5 2013 Jens Petersen <petersen@redhat.com> - 0.9.9.1-1
eac7e43
- update to 0.9.9.1
eac7e43
- depends on ansi-terminal and time
eac7e43
eac7e43
* Fri Oct  4 2013 Jens Petersen <petersen@redhat.com> - 0.9.9-1
eac7e43
- update to 0.9.9
eac7e43
  http://www.idris-lang.org/idris-0-9-9-released/
eac7e43
- disable LLVM backend for now
eac7e43
- depends on vector-binary-instances
eac7e43
- buildrequires gc-devel
eac7e43
eac7e43
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.8-4
eac7e43
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
eac7e43
eac7e43
* Tue Jul  9 2013 Jens Petersen <petersen@redhat.com> - 0.9.8-3
eac7e43
- use cabal_configure_extra_options to set datadir (#947819)
eac7e43
- add a comment about the devel files in the main package (#947819)
eac7e43
eac7e43
* Mon Jul  8 2013 Jens Petersen <petersen@redhat.com> - 0.9.8-2
eac7e43
- install idris devel data files under libdir (#947819)
eac7e43
eac7e43
* Mon Jul  1 2013 Jens Petersen <petersen@redhat.com> - 0.9.8-1
eac7e43
- update to 0.9.8
eac7e43
- http://idris-lang.org/archives/272
eac7e43
eac7e43
* Sat Apr  6 2013 Jens Petersen <petersen@redhat.com> - 0.9.7-2
eac7e43
- requires gcc
eac7e43
eac7e43
* Wed Apr  3 2013 Jens Petersen <petersen@redhat.com> - 0.9.7-1
eac7e43
- spec file regenerated with cabal-rpm-0.8.0
eac7e43
eac7e43
* Sat Feb 25 2012 Jens Petersen <petersen@redhat.com> - 0.9.1-1
eac7e43
- update to 0.9.1
eac7e43
eac7e43
* Fri Jan 27 2012 Jens Petersen <petersen@redhat.com> - 0.9.0-1
eac7e43
- BSD license
eac7e43
eac7e43
* Fri Jan 27 2012 Fedora Haskell SIG <haskell-devel@lists.fedoraproject.org>
eac7e43
- spec file template generated by cabal2spec-0.25.4