Compare commits

..

No commits in common. "master" and "f24" have entirely different histories.
master ... f24

3 changed files with 24 additions and 261 deletions

18
.gitignore vendored
View File

@ -31,21 +31,3 @@
/cabal-rpm-0.10.0.tar.gz
/cabal-rpm-0.10.1.tar.gz
/cabal-rpm-0.11.tar.gz
/cabal-rpm-0.11.1.tar.gz
/cabal-rpm-0.11.2.tar.gz
/cabal-rpm-0.12.tar.gz
/cabal-rpm-0.12.1.tar.gz
/cabal-rpm-0.12.2.tar.gz
/cabal-rpm-0.12.3.tar.gz
/cabal-rpm-0.12.4.tar.gz
/cabal-rpm-0.12.5.tar.gz
/cabal-rpm-0.12.6.tar.gz
/cabal-rpm-0.13.tar.gz
/cabal-rpm-0.13.1.tar.gz
/cabal-rpm-0.13.2.tar.gz
/cabal-rpm-0.13.3.tar.gz
/cabal-rpm-1.0.1.tar.gz
/cabal-rpm-1.0.2.tar.gz
/cabal-rpm-1.0.3.tar.gz
/cabal-rpm-2.0.0.tar.gz
/cabal-rpm-2.0.4.tar.gz

View File

@ -1,297 +1,78 @@
# generated by cabal-rpm-2.0.2 --stream hackage
# https://fedoraproject.org/wiki/Packaging:Haskell
%bcond_without manpage
Name: cabal-rpm
Version: 2.0.4
Version: 0.11
Release: 1%{?dist}
Summary: RPM packaging tool for Haskell Cabal-based packages
License: GPLv3+
Url: https://hackage.haskell.org/package/%{name}
# Begin cabal-rpm sources:
Source0: https://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.tar.gz
# End cabal-rpm sources
Source1: cblrpm.1
# Begin cabal-rpm deps:
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-rpm-macros
BuildRequires: ghc-Cabal-static
BuildRequires: ghc-base-static
BuildRequires: ghc-bytestring-static
BuildRequires: ghc-directory-static
BuildRequires: ghc-filepath-static
BuildRequires: ghc-http-client-static
BuildRequires: ghc-http-client-tls-static
BuildRequires: ghc-http-conduit-static
BuildRequires: ghc-optparse-applicative-static
BuildRequires: ghc-process-static
BuildRequires: ghc-simple-cabal-static
BuildRequires: ghc-simple-cmd-static
BuildRequires: ghc-simple-cmd-args-static
BuildRequires: ghc-time-static
BuildRequires: ghc-unix-static
# Begin cabal-rpm deps:
BuildRequires: ghc-directory-devel
BuildRequires: ghc-filepath-devel
BuildRequires: ghc-old-locale-devel
BuildRequires: ghc-process-devel
BuildRequires: ghc-time-devel
BuildRequires: ghc-unix-devel
# End cabal-rpm deps
%if %{with manpage}
BuildRequires: pandoc
%endif
Obsoletes: cabal2spec < 0.26
Provides: cblrpm = %{version}-%{release}
Requires: cabal-install
Requires: rpm-build
# for repoquery
%if 0%{?fedora} || 0%{?rhel} > 7
%if 0%{?fedora} >= 22
Requires: dnf-plugins-core
%else
Requires: yum-utils
%endif
Requires: dos2unix
# for rpmdev-bumpspec
Requires: rpmdevtools
Requires: wget
%description
This package provides a RPM packaging tool for Haskell Cabal-based packages.
Cabal-rpm is a tool for RPM packaging of Haskell Cabal-based packages.
It interacts with dnf to install build dependencies and can also act as
a cabal-install wrapper installing dependencies packaged in Fedora before
running "cabal install".
cabal-rpm has commands to generate a RPM spec file and srpm for a package.
It can rpmbuild packages, yum/dnf install their dependencies, prep packages,
and install them. There are commands to list package dependencies and missing
cblrpm has commands to generate a RPM spec file and srpm for a package.
It can rpmbuild packages, dnf install their dependencies, prep packages, and
install them. There are commands to list package dependencies and missing
dependencies. The diff command compares the current spec file with a freshly
generated one, the update command updates the spec file to latest version from
Stackage or Hackage, and the refresh command updates the spec file to the
current cabal-rpm packaging. It also handles Hackage revisions of packages.
Standalone packages can also be made, built with cabal-install.
generated one and the update command updates the spec file to latest version
from Hackage.
%prep
# Begin cabal-rpm setup:
%setup -q
# End cabal-rpm setup
%build
# Begin cabal-rpm build:
%ghc_bin_build
# End cabal-rpm build
%if %{with manpage}
pandoc -s -t man man/cabal-rpm.1.md > man/cabal-rpm.1
%endif
%install
# Begin cabal-rpm install
%ghc_bin_install
# End cabal-rpm install
%if %{with manpage}
install -p -m 0644 -D man/%{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1
install -p -m 0644 -D man/cabal-rpm.1 %{buildroot}%{_mandir}/man1/cabal-rpm.1
install -p -m 0644 %SOURCE1 %{buildroot}%{_mandir}/man1/
%endif
ln -s %{name} %{buildroot}%{_bindir}/cblrpm
%files
# Begin cabal-rpm files:
%license COPYING
%doc ChangeLog README.md TODO
%doc ChangeLog README.md
%{_bindir}/%{name}
# End cabal-rpm files
%{_bindir}/cblrpm
%{_mandir}/man1/%{name}.1*
%{_mandir}/man1/cabal-rpm.1*
%{_mandir}/man1/cblrpm.1*
%changelog
* Thu Feb 27 2020 Jens Petersen <petersen@redhat.com> - 2.0.4-1
- drop %_devel compat macro
- default stream is now lts-14
- spec: detect local revised .cabal file
- sort deps of subpackages
- metapkgs don't have prof or doc
- fix generation of subpackages for a new package
- update: logic reworked to reduce redundant downloads
- quote macros in commented fields
- read --subpackage from spec header
- generate BRs for subpackages
* Thu Feb 20 2020 Jens Petersen <petersen@redhat.com> - 2.0.0-3
- refresh to cabal-rpm-2.0.2
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 20 2020 Jens Petersen <petersen@redhat.com> - 2.0.0-1
- update to 2.0.0:
- major refactor to handle stream/pkgid more precisely and correctly
(hence major version bump due to behavior changes)
- eg can no longer specify both stream and pkg-ver
- check for package first in default LTS, then latest LTS, and Nightly,
before Hackage
- respect and read/write --standalone and --stream in spec header consistently
(note default LTS stream is not written to header)
- fix infinite loop for 'install'
* Tue Dec 31 2019 Jens Petersen <petersen@redhat.com> - 1.0.3-1
- update to 1.0.3
- define _devel for f30 packaging compatibility
- missingdeps and builddep fixes
- --standalone: adds BRs for deps of missing deps
* Mon Dec 09 2019 Jens Petersen <petersen@redhat.com> - 1.0.2-1
- minor bugfixes
- https://hackage.haskell.org/package/cabal-rpm-1.0.2/changelog
* Tue Oct 01 2019 Jens Petersen <petersen@redhat.com> - 1.0.1-1
- doc and prof subpackages for libraries
- reworked to use optparse-applicative (simple-cmd-args)
- default to Stackage LTS 13
- F31+ uses triggers for ghc-pkg recache
- wait 10^4s (< 3 hours) between cabal update's
- refactor using simple-cabal, PackageName and LibPkgType
- handle setup-depends
- diff: autodetect subpackaging
- https://hackage.haskell.org/package/cabal-rpm-1.0.1/changelog
* Thu Aug 01 2019 Jens Petersen <petersen@redhat.com> - 0.13.3-3
- generate manpage (#1725973)
- fix build with simple-cmd 0.2
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat May 11 2019 fedora-toolbox <petersen@redhat.com> - 0.13.3-1
- repoquery for missing deps' package .conf file to avoid modular ghc conflicts
- only --assumeyes for dnf install when not tty
- use tmpdir for tmp spec files and building missing deps
- give up if more than one spec file
- fix handling unversioned update
- map cabal build-tool to cabal-install
* Mon May 06 2019 Jens Petersen <petersen@redhat.com> - 0.13.2-1
- update to 0.13.2:
- include ANNOUNCE in docs
- if dependency parallel directory exists, don't check if installed
- fix buildDepends on Cabal-2.4
- new --standalone option for private packages built with cabal-install
- print --{missing,standalone,subpackage} options on spec file header line
* Mon Mar 18 2019 Jens Petersen <petersen@redhat.com> - 0.13.1-1
- update: fix rw git dir detection
- fix tarball downloading and copying of revised .cabal file
- show output (errors) when prepping source and prep in working dir
- include BUGS and CONTRIBUTING as docs
- need chrpath for subpackaging
- move license dir to any common subpackage
* Tue Feb 19 2019 Jens Petersen <petersen@redhat.com> - 0.13-1
- improve license and doc filtering
- backup revised .cabal files
- fallback to spectool for source downloading
- drop selfdep
- common subpackage for binlib data files
- section dividers for sources, setup, build, install, and files
- only run "cabal update" if more than 10min old
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Oct 20 2018 Jens Petersen <petersen@redhat.com> - 0.12.6-1
- update: remove old revised .cabal
- convert revised .cabal file to unix format (using dos2unix)
- spec: support haskell-gi libraries
- most of SysCmd moved to simple-cmd library (new dep)
- can now download multiple source files
- use line-buffering for stdout
- always do cabal update
- support ghc_without_dynamic for static executables
* Tue Sep 25 2018 Jens Petersen <petersen@redhat.com> - 0.12.5-3
- Require dos2unix for converting .cabal files to unix text format
* Mon Jul 30 2018 Jens Petersen <petersen@redhat.com> - 0.12.5-2
- patch default tracked stream to lts-11
* Sun Jul 29 2018 Jens Petersen <petersen@redhat.com> - 0.12.5-1
- improvements to update and refresh
- improved revising of .cabal files
- use "fedpkg sources" to fetch current Fedora sources
- do not put doc* in docs
- better output for missing sub-deps
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu May 31 2018 Jens Petersen <petersen@redhat.com> - 0.12.4-2
- requires wget
* Thu May 31 2018 Jens Petersen <petersen@redhat.com> - 0.12.4-1
- now uses Hackage revisions of packages
- spec --stream STREAM replaces --hackage
* Tue May 15 2018 Jens Petersen <petersen@redhat.com> - 0.12.3-1
- build: remove erroneous tarball check
- refresh: use cblrpm for old cabal-rpm
* Thu Mar 29 2018 Jens Petersen <petersen@redhat.com> - 0.12.2-1
- diff: now supports CBLRPM_DIFF envvar to override "diff -u"
- build: attempt when missing rpms deps not available
* Wed Feb 21 2018 Jens Petersen <petersen@redhat.com> - 0.12.1-4
- fix build on epel7 ghc
* Wed Feb 21 2018 Jens Petersen <petersen@redhat.com> - 0.12.1-3
- add bcond for https
* Wed Feb 21 2018 Jens Petersen <petersen@redhat.com> - 0.12.1-2
- escape macro in previous changelog
* Tue Feb 20 2018 Jens Petersen <petersen@fedoraproject.org> - 0.12.1-1
- new option --missing: comments out missing dependencies
- put license files in lib subpackage
- no longer append %%_isa to C BuildRequires (#54)
- no longer leave leftover tmpdirs (#26)
- change 'cblrpm' to 'cabal-rpm' in documentation
* Fri Feb 09 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.12-4
- Escape macros in %%changelog
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.12-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Fri Jan 26 2018 Jens Petersen <petersen@redhat.com> - 0.12-2
- rebuild
* Fri Nov 17 2017 Jens Petersen <petersen@redhat.com> - 0.12-1
- query stackage.org directly via https
- run cabal update before cabal commands
- devel packages now provide doc subpackage for forward compatibility
- new --hackage option to get package version from Hackage not Stackage
- do not add .cabal files containing "doc" to docs
- silence mock rpmbuild -bs warnings about undefined %%ghc_version
* Mon Jul 31 2017 Jens Petersen <petersen@redhat.com> - 0.11.2-1
- fix cblrpm update --subpackage
- fix rpm installation when no sudo
- fix handling of no exposed modules
- fix license handling for selfdep binlib
* Mon Mar 13 2017 Jens Petersen <petersen@redhat.com> - 0.11.1-1
- update to 0.11.1 release:
- support for building meta (compat) lib packages
- fix invocation of optional stackage-query for updating to LTS
- preliminary --subpackage support for subpkgs of missing deps:
including downloading, but update is not properly implemented yet
- new pkgver macro
- update do not reset release for subpkgs
* Fri Feb 24 2017 Jens Petersen <petersen@redhat.com> - 0.11-3
- refresh packaging to cabal-rpm-0.11.1
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.11-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Jan 27 2017 Jens Petersen <petersen@redhat.com> - 0.11-1
- diff and update now follow package-version args
- update from Hackage now follows "Default available version"
@ -362,7 +143,7 @@ ln -s %{name} %{buildroot}%{_bindir}/cblrpm
- cblrpm update needs rpmdevtools
* Thu Feb 5 2015 Jens Petersen <petersen@redhat.com> - 0.9.3-2
- remove %%'s from previous changelog
- remove %'s from previous changelog
* Thu Feb 5 2015 Jens Petersen <petersen@redhat.com> - 0.9.3-1
- make sure tarball destdir exists before copying

View File

@ -1 +1 @@
SHA512 (cabal-rpm-2.0.4.tar.gz) = f5ee97a80bdc595d96902edc261bf90725b3e0381b404d5768f1c0b823de28a1710576c5877f90bd702523202bfa84cef2f6653746b8fff7df7b226e43dfd2ec
SHA512 (cabal-rpm-0.11.tar.gz) = 97c8d32364864ab96b525b9b42d0a006fd9ccd09b6e02e31a70bb4febbdd62aca3d52aef4a913ebb1caa7cedf563ae74dc8db698a99583c28e159a1155ac9d1c