From c4a311b18060eecbd6c1eeb7c9fd2115e6bf6b08 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Thu, 5 Mar 2009 06:55:15 +0000 Subject: [PATCH] cabal2spec and templates now live in cabal2spec package --- cabal-bin-template.spec.in | 48 ------------ cabal-binlib-template.spec.in | 142 ---------------------------------- cabal-lib-template.spec.in | 131 ------------------------------- cabal2spec | 78 ------------------- 4 files changed, 399 deletions(-) delete mode 100644 cabal-bin-template.spec.in delete mode 100644 cabal-binlib-template.spec.in delete mode 100644 cabal-lib-template.spec.in delete mode 100755 cabal2spec diff --git a/cabal-bin-template.spec.in b/cabal-bin-template.spec.in deleted file mode 100644 index a69f081..0000000 --- a/cabal-bin-template.spec.in +++ /dev/null @@ -1,48 +0,0 @@ -# ghc does not emit debug information -%define debug_package %{nil} - -Name: @PACKAGE@ -Version: @VERSION@ -Release: 1%{?dist} -Summary: *FIXME* - -Group: *FIXME* -License: BSD? -URL: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/%{name} -Source0: http://hackage.haskell.org/packages/archive/%{name}/%{version}/%{name}-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -ExclusiveArch: i386 x86_64 ppc - -BuildRequires: ghc - -%description -*FIXME* - - -%prep -%setup -q - - -%build -%cabal_configure -%cabal build - - -%install -rm -rf $RPM_BUILD_ROOT -%cabal_install - - -%clean -rm -rf $RPM_BUILD_ROOT - - -%files -%defattr(-,root,root,-) -%doc LICENSE -%{_bindir}/%{name} - - -%changelog -* @DATE@ @PACKAGER@ <@EMAIL@> - @VERSION@-1 -- initial packaging for Fedora created by cabal2spec diff --git a/cabal-binlib-template.spec.in b/cabal-binlib-template.spec.in deleted file mode 100644 index 9fc7e2e..0000000 --- a/cabal-binlib-template.spec.in +++ /dev/null @@ -1,142 +0,0 @@ -%define ghc_version @GHC_VERSION@ - -%define pkg_libdir %{_libdir}/ghc-%{ghc_version}/%{name}-%{version} -%define pkg_docdir %{_docdir}/ghc/libraries/%{name}-%{version} - -%bcond_without prof -%bcond_without doc - -# ghc does not emit debug information -%define debug_package %{nil} - -Name: @PACKAGE@ -Version: @VERSION@ -Release: 1%{?dist} -Summary: *FIXME* - -Group: *FIXME* -License: BSD? *FIXME* -URL: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/%{name} -Source0: http://hackage.haskell.org/packages/archive/%{name}/%{version}/%{name}-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -# ghc has only been bootstrapped on the following archs: -ExclusiveArch: i386 x86_64 ppc -BuildRequires: ghc = %{ghc_version} -%if %{with prof} -BuildRequires: ghc-prof = %{ghc_version} -%endif - -%description -*FIXME* - - -%package -n ghc-%{name} -Summary: Haskell %{name} library *FIXME* -Group: Development/Libraries -Provides: ghc-%{name}-devel = %{version}-%{release} -Requires: ghc = %{ghc_version} -Requires(post): ghc = %{ghc_version} -Requires(preun): ghc = %{ghc_version} - -%description -n ghc-%{name} -Haskell %{name} library. *FIXME* - - -%if %{with doc} -%package -n ghc-%{name}-doc -Summary: Documentation for %{name} -Group: Development/Libraries -Requires: ghc-doc = %{ghc_version} -Requires(postun): ghc-doc = %{ghc_version} - -%description -n ghc-%{name}-doc -This package contains development documentation files for the %{name} library. -%endif - - -%if %{with prof} -%package -n ghc-%{name}-prof -Summary: Profiling libraries for %{name} -Group: Development/Libraries -Requires: ghc-%{name} = %{version}-%{release} -Requires: ghc-prof = %{ghc_version} - -%description -n ghc-%{name}-prof -This package contains profiling libraries for %{name}. -%endif - - -%prep -%setup -q - - -%build -%cabal_configure --ghc %{!?without_prof:-p} -%cabal build -%if %{with doc} -%cabal haddock -%endif -%ghc_gen_scripts - - -%install -rm -rf $RPM_BUILD_ROOT -%cabal_install -%ghc_install_scripts -%ghc_gen_filelists ghc-%{name} - - -%clean -rm -rf $RPM_BUILD_ROOT - - -%post -n ghc-%{name} -%ghc_register_pkg - - -%if %{with doc} -%post -n ghc-%{name}-doc -%ghc_reindex_haddock -%endif - - -%preun -n ghc-%{name} -if [ "$1" -eq 0 ] ; then - %ghc_unregister_pkg -fi - - -%if %{with doc} -%postun -n ghc-%{name}-doc -if [ "$1" -eq 0 ] ; then - %ghc_reindex_haddock -fi -%endif - - -%files -%defattr(-,root,root,-) -%doc LICENSE -%{_bindir}/%{name} - - -%files -n ghc-%{name} -f ghc-%{name}.files -%defattr(-,root,root,-) - - -%if %{with doc} -%files -n ghc-%{name}-doc -%defattr(-,root,root,-) -%{pkg_docdir} -%endif - - -%if %{with prof} -%files -n ghc-%{name}-prof -f ghc-%{name}-prof.files -%defattr(-,root,root,-) -%endif - - -%changelog -* @DATE@ @PACKAGER@ <@EMAIL@> - @VERSION@-1 -- initial packaging for Fedora created by cabal2spec diff --git a/cabal-lib-template.spec.in b/cabal-lib-template.spec.in deleted file mode 100644 index c8d6440..0000000 --- a/cabal-lib-template.spec.in +++ /dev/null @@ -1,131 +0,0 @@ -%define pkg_name @PACKAGE@ -%define ghc_version @GHC_VERSION@ - -%define pkg_libdir %{_libdir}/ghc-%{ghc_version}/%{pkg_name}-%{version} -%define pkg_docdir %{_docdir}/ghc/libraries/%{pkg_name}-%{version} - -%bcond_without prof -%bcond_without doc - -# ghc does not emit debug information -%define debug_package %{nil} - -Name: ghc-%{pkg_name} -Version: @VERSION@ -Release: 1%{?dist} -Summary: Haskell %{pkg_name} library *FIXME* - -Group: Development/Libraries -License: BSD? *FIXME* -URL: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/%{pkg_name} -Source0: http://hackage.haskell.org/packages/archive/%{pkg_name}/%{version}/%{pkg_name}-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) - -Provides: %{name}-devel = %{version}-%{release} -# ghc has only been bootstrapped on the following archs: -ExclusiveArch: i386 x86_64 ppc -BuildRequires: ghc = %{ghc_version} -%if %{with prof} -BuildRequires: ghc-prof = %{ghc_version} -%endif -Requires: ghc = %{ghc_version} -Requires(post): ghc = %{ghc_version} -Requires(preun): ghc = %{ghc_version} - -%description -Haskell %{pkg_name} library for ghc-%{ghc_version}. *FIXME* - - -%if %{with doc} -%package doc -Summary: Documentation for %{name} -Group: Development/Libraries -Requires: ghc-doc = %{ghc_version} -Requires(postun): ghc-doc = %{ghc_version} - -%description doc -This package contains development documentation files for the %{name} library. -%endif - - -%if %{with prof} -%package prof -Summary: Profiling libraries for %{name} -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} -Requires: ghc-prof = %{ghc_version} - -%description prof -This package contains profiling libraries for %{name}. -%endif - - -%prep -%setup -q -n %{pkg_name}-%{version} - - -%build -%cabal_configure --ghc %{!?without_prof:-p} -%cabal build -%if %{with doc} -%cabal haddock -%endif -%ghc_gen_scripts - - -%install -rm -rf $RPM_BUILD_ROOT -%cabal_install -%ghc_install_scripts -%ghc_gen_filelists %{name} - - -%clean -rm -rf $RPM_BUILD_ROOT - - -%post -%ghc_register_pkg - - -%if %{with doc} -%post doc -%ghc_reindex_haddock -%endif - - -%preun -if [ "$1" -eq 0 ] ; then - %ghc_unregister_pkg -fi - - -%if %{with doc} -%postun doc -if [ "$1" -eq 0 ] ; then - %ghc_reindex_haddock -fi -%endif - - -%files -f %{name}.files -%defattr(-,root,root,-) -%doc LICENSE - - -%if %{with doc} -%files doc -%defattr(-,root,root,-) -%{pkg_docdir} -%endif - - -%if %{with prof} -%files prof -f %{name}-prof.files -%defattr(-,root,root,-) -%endif - - -%changelog -* @DATE@ @PACKAGER@ <@EMAIL@> - @VERSION@-1 -- initial packaging for Fedora created by cabal2spec diff --git a/cabal2spec b/cabal2spec deleted file mode 100755 index f1b9df2..0000000 --- a/cabal2spec +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/sh - -# Copyright (C) 2008-2009 Red Hat, Inc -# Written by Jens Petersen , 2008. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -set -e - -[ $# -ne 1 -o ! -r "$1" ] && echo "Usage: $(basename $0) [hackage.tar.gz|hackage.cabal]" && exit 1 - -FILE=$1 - -case $FILE in - *.tar.gz) - TARNAME_VER=$(basename $FILE .tar.gz) - TARVERSION=$(echo $TARNAME_VER | sed -e "s/.*-//") - TARNAME=$(echo $TARNAME_VER | sed -e "s/-$TARVERSION//") - WORKDIR=$(mktemp -d) - tar zxf $FILE -C $WORKDIR "*.cabal" - CABAL="$WORKDIR/*/*.cabal" ;; - *.cabal) - CABAL=$FILE ;; -esac - -NAME=$(grep -i ^name: $CABAL | sed -e "s/[Nn]ame:[ \t]*//") -if [ -n "$TARNAME" -a "$TARNAME" != "$NAME" ]; then - echo "Warning: tarball name ($TARNAME) and cabal name ($NAME) differ!" -fi - -VERSION=$(grep -i ^version: $CABAL | sed -e "s/[Vv]ersion:[ \t]*//") -if [ -n "$TARVERSION" -a "$TARVERSION" != "$VERSION" ]; then - echo "Warning: tarball version ($TARVERSION) and cabal version ($VERSION) differ!" -fi - -CABALFILENAME=$(basename $CABAL .cabal) -if [ "$CABALFILENAME" != "$NAME" ]; then - echo "Warning: .cabal filename ($CABALFILENAME) and cabal Name field ($NAME) differ!" -fi - - -if grep -qi exposed-modules: $CABAL; then - HAS_LIB=yes -fi - -if grep -qi executable $CABAL; then - HAS_BIN=yes -fi - -[ -d "$WORKDIR" ] && rm -r $WORKDIR - -if [ "$HAS_LIB" -a ! "$HAS_BIN" ]; then - PREFIX=ghc- -fi - -SPECFILE=$PREFIX$NAME.spec - -[ -r "$SPECFILE" ] && echo "$SPECFILE already exists!" && exit 1 - -cp /usr/share/ghc/cabal-${HAS_BIN:+bin}${HAS_LIB:+lib}-template.spec.in $SPECFILE - -echo "created $SPECFILE (${HAS_BIN:+bin}${HAS_LIB:+lib}) for $NAME-$VERSION" - -DATE=$(env LANG=C date +"%a %b %e %Y") - -sed -i -e "s/@PACKAGE@/$NAME/" -e "s/@GHC_VERSION@/$(ghc --numeric-version)/" -e "s/@VERSION@/$VERSION/" -e "s/@DATE@/$DATE/" $SPECFILE