From Fedora Project Wiki
< PackagingDrafts | Haskell
Binary Only Template
This is a sample spec file for a Haskell Cabal package. This sample demonstrates how to package a Haskell Cabal package that contains only a binary. It was generated automatically using cabal-rpm. It contains a few minor bugs, including missing dependency declarations. This is due to a limitation in cabal-rpm that needs to be fixed.
- Bug me enough and I might fill them in manually - YaakovNemoy
%define hsc_name ghc %define hsc_version 6.8.2 %define h_pkg_name xmobar %define f_pkg_name xmobar %define pkg_libdir %{_libdir}/%{hsc_name}-%{hsc_version}/%{h_pkg_name}-%{version} %define tar_dir %{_builddir}/%{?buildsubdir} %define debug_package %{nil} Name: %{f_pkg_name} Version: 0.8 Release: 1%{?dist} License: BSD Group: Development/Languages URL: http://code.haskell.org/~arossato/xmobar Source: xmobar-0.8.tar.gz Summary: A Minimalistic Text Based Status Bar BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: ghc = 6.8.2 %description Xmobar is a minimalistic text based status bar. Inspired by the Ion3 status bar, it supports similar features, like dynamic color management, output templates, and extensibility through plugins. %package -n %{hsc_name}-%{f_pkg_name}-prof Summary: Profiling libraries for %{hsc_name}-%{f_pkg_name} Group: Development/Libraries Requires: %{hsc_name}-%{f_pkg_name} = %{version} Provides: %{h_pkg_name}-%{hsc_name}-%{hsc_version}-prof = %{version} %description -n %{hsc_name}-%{f_pkg_name}-prof Xmobar is a minimalistic text based status bar. Inspired by the Ion3 status bar, it supports similar features, like dynamic color management, output templates, and extensibility through plugins. This package contains profiling libraries for %{hsc_name} %{hsc_version}. %prep %setup -q -n %{h_pkg_name}-%{version} %build if [ -f configure.ac -a ! -f configure ] ; then autoreconf; fi runghc Setup configure --prefix=%{_prefix} --libdir=%{_libdir} --docdir=%{_docdir}/%{hsc_name}-%{f_pkg_name}-%{version} --libsubdir='$compiler/$pkgid' --enable-library-profiling --ghc runghc Setup build %install rm -rf ${RPM_BUILD_ROOT} runghc Setup copy --destdir=${RPM_BUILD_ROOT} cd ${RPM_BUILD_ROOT}/%{_datadir}/doc/%{hsc_name}-%{f_pkg_name}-%{version} rm -rf doc LICENSE README.html README %clean rm -rf ${RPM_BUILD_ROOT} %files %defattr(-,root,root,-) %{_bindir}/xmobar %doc LICENSE %changelog * Thu May 01 2008 cabal-rpm <cabal-devel@haskell.org> - 0.8-1 - spec file autogenerated by cabal-rpm