ShellCheck/ShellCheck.spec
Jens Petersen ba15a85ee6 proper fix to disable tests everywhere (#1158522)
We don't really want to link ShellCheck to QuickCheck:
QuickCheck should only be used at buildtime for tests
- https://github.com/koalaman/shellcheck/issues/254

I had forgotten to remove the QuickCheck imports
in my earlier ARM version of the patch
(that QC module is not available on all secondary archs).

Sorry about the formatting changes but it makes
life easier for me to keep the spacing close to cblrpm output.
(Maybe I should add an ignore whitespace option to
"cblrpm diff" in the future.:)

Hopefully this should now really build on all archs!
2014-11-06 19:52:51 +09:00

192 lines
5.4 KiB
RPMSpec

%global pkg_name ShellCheck
# re-enable after QuickCheck code moved out of main src files
# (see https://github.com/koalaman/shellcheck/issues/254)
#%%ifarch %(echo %{ghc_arches_with_ghci} | sed -e s/armv7hl//)
#%%bcond_without tests
#%%else
#%%bcond_with tests
#%%endif
# disable all tests for now to avoid linking QuickCheck
%bcond_with tests
# no useful debuginfo for Haskell packages without C sources
%global debug_package %{nil}
Name: %{pkg_name}
Version: 0.3.4
Release: 2%{?dist}
Summary: Tool for checking common errors in POSIX shell scripts
License: AGPLv3+
URL: http://www.shellcheck.net/about.html
Source0: http://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.tar.gz
Patch0: ShellCheck-disable-TemplateHaskell-runTests.patch
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-rpm-macros
# Begin cabal-rpm deps:
BuildRequires: chrpath
BuildRequires: ghc-containers-devel
BuildRequires: ghc-directory-devel
BuildRequires: ghc-json-devel
BuildRequires: ghc-mtl-devel
BuildRequires: ghc-parsec-devel
BuildRequires: ghc-regex-compat-devel
%if %{with tests}
BuildRequires: ghc-QuickCheck-devel
%endif
# End cabal-rpm deps
BuildRequires: pandoc
%description
The goals of ShellCheck are:
- To point out and clarify typical beginner's syntax issues,
that causes a shell to give cryptic error messages.
- To point out and clarify typical intermediate level semantic problems,
that causes a shell to behave strangely and counter-intuitively.
- To point out subtle caveats, corner cases and pitfalls, that may cause an
advanced user's otherwise working script to fail under future circumstances.
%package -n ghc-%{name}
Summary: Haskell %{name} library
%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}
Requires: ghc-compiler = %{ghc_version}
Requires(post): ghc-compiler = %{ghc_version}
Requires(postun): ghc-compiler = %{ghc_version}
Requires: ghc-%{name}%{?_isa} = %{version}-%{release}
%description -n ghc-%{name}-devel
This package provides the Haskell %{name} library development files.
%prep
%setup -q
%if %{without tests}
%patch0 -p1 -b .orig
%endif
%build
LANG=en_US.utf8
%ghc_lib_build
pandoc -s -t man shellcheck.1.md -o shellcheck.1
%install
%ghc_lib_install
install -Dpm 0644 shellcheck.1 %{buildroot}%{_mandir}/man1/shellcheck.1
%ghc_fix_dynamic_rpath shellcheck
%check
%if %{with tests}
%cabal test
%endif
%post -n ghc-%{name}-devel
%ghc_pkg_recache
%postun -n ghc-%{name}-devel
%ghc_pkg_recache
%files
%doc LICENSE
%doc README.md
%{_bindir}/shellcheck
%{_mandir}/man1/shellcheck.1*
%files -n ghc-%{name} -f ghc-%{name}.files
%doc LICENSE
%files -n ghc-%{name}-devel -f ghc-%{name}-devel.files
%doc README.md
%changelog
* Tue Nov 4 2014 Jens Petersen <petersen@redhat.com> - 0.3.4-2
- disable tests on all archs (#1158522)
- QuickCheck should really only be used for buildtime tests
* Thu Sep 11 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.4-1
- bumped to version 0.3.4
- switched to hackage for the source tarball
- tests are now driven by cabal
- skip tests on ARM since TemplateHaskell fails
* Fri Sep 5 2014 Jens Petersen <petersen@redhat.com> - 0.3.3-2
- reenable pandoc on ARM
* Thu Sep 04 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.3-1
- rebuilt after a dependency upgrade
* Sat Aug 30 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.3-0
- bumped to version 0.3.3
- removed upstreamed patch
* Thu Aug 28 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.1-9
- rebuilt after a dependency upgrade
* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.1-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Fri Jun 06 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Mar 17 2014 Jens Petersen <petersen@redhat.com> - 0.3.1-6
- fix shellcheck rpath instead of using ld.so.conf.d
- simplify doc files
* Sun Mar 16 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.1-5
- added missing ld config
* Sat Mar 01 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.1-4
- executable dynamically linked to the library (bug #1069048)
* Sun Feb 09 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.1-3
- removed Setup.hs, now available upstream
- stop building the man page on ARM, no pandoc (bug #992430)
- simpler workaroudn for bug #1052117
* Wed Feb 05 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.1-2
- build and install the man page
* Tue Feb 04 2014 Dridi <dridi.boukelmoune@gmail.com> - 0.3.1-1
- bumped to version 0.3.1
- added a workaround for the Fedora haskell toolchain (bug #1052117)
* Tue Dec 03 2013 Dridi <dridi.boukelmoune@gmail.com> - 0.2.0-3
- rebuilt
* Tue Dec 03 2013 Dridi Boukelmoune <dridi.boukelmoune@gmail.com> - 0.2.0-3
- s/shell/POSIX shell/ in summary
- LICENSE and README co-owned by sub-packages
* Sat Nov 30 2013 Dridi Boukelmoune <dridi.boukelmoune@gmail.com> - 0.2.0-2
- added a patch for "for arg do" loops (d4bc0f6)
* Sat Nov 23 2013 Dridi Boukelmoune <dridi.boukelmoune@gmail.com> - 0.2.0-1
- spec file generated by cabal-rpm-0.8.6
- added the description from the README
- fixed broken bits from the generated spec