don't build .o when no ghci; support meta-packages; optional common_summary and common_description
- only build ghci .o library files on ghc_arches_with_ghci - support meta packages like haskell-platform without base lib files - make it possible not to have to use common_summary and common_description
This commit is contained in:
parent
7ffdbdc6d5
commit
6b6cf52f6d
@ -21,7 +21,10 @@ fi
|
|||||||
# configure
|
# configure
|
||||||
%cabal_configure\
|
%cabal_configure\
|
||||||
%ghc_check_bootstrap\
|
%ghc_check_bootstrap\
|
||||||
%cabal configure --prefix=%{_prefix} --libdir=%{_libdir} --docdir=%{_docdir}/%{name}-%{version} %{?pkg_name:--htmldir=%{ghclibdocdir}/%{pkg_name}-%{version}} --libsubdir='$compiler/$pkgid' --ghc %{!?ghc_without_shared:--enable-shared} %{!?ghc_without_dynamic:--enable-executable-dynamic} %{?cabal_configure_options}
|
%ifnarch %{ghc_arches_with_ghci}\
|
||||||
|
%define disable_library_for_ghci --disable-library-for-ghci\
|
||||||
|
%endif\
|
||||||
|
%cabal configure --prefix=%{_prefix} --libdir=%{_libdir} --docdir=%{_docdir}/%{name}-%{version} %{?pkg_name:--htmldir=%{ghclibdocdir}/%{pkg_name}-%{version}} --libsubdir='$compiler/$pkgid' --ghc %{!?ghc_without_shared:--enable-shared} %{!?ghc_without_dynamic:--enable-executable-dynamic} %{?disable_library_for_ghci} %{?cabal_configure_options}
|
||||||
|
|
||||||
# install
|
# install
|
||||||
%cabal_install %cabal copy --destdir=%{buildroot} -v
|
%cabal_install %cabal copy --destdir=%{buildroot} -v
|
||||||
@ -73,7 +76,11 @@ fi\
|
|||||||
if [ -d "%{buildroot}%{docdir}" ]; then\
|
if [ -d "%{buildroot}%{docdir}" ]; then\
|
||||||
echo "%{docdir}" >> %{basepkg}-devel.files\
|
echo "%{docdir}" >> %{basepkg}-devel.files\
|
||||||
fi\
|
fi\
|
||||||
sed -i -e "s!%{buildroot}!!g" %{!?ghc_without_shared:%{basepkg}.files} %{basepkg}-devel.files\
|
for i in %{!?ghc_without_shared:%{basepkg}.files} %{basepkg}-devel.files; do\
|
||||||
|
if [ -f "$i" ];\
|
||||||
|
sed -i -e "s!%{buildroot}!!g" $i\
|
||||||
|
fi\
|
||||||
|
done\
|
||||||
%{nil}
|
%{nil}
|
||||||
|
|
||||||
%ghc_add_basepkg_file()\
|
%ghc_add_basepkg_file()\
|
||||||
@ -124,7 +131,7 @@ Requires: ghc-%{?pkg_name}%{!?pkg_name:%{pkgname}} = %{?pkgver}%{!?pkgver:
|
|||||||
%define pkgver %{?2}%{!?2:%{version}}\
|
%define pkgver %{?2}%{!?2:%{version}}\
|
||||||
%define basepkg ghc-%{pkgname}\
|
%define basepkg ghc-%{pkgname}\
|
||||||
%package -n %{basepkg}\
|
%package -n %{basepkg}\
|
||||||
Summary: %{?common_summary}%{!?common_summary:Haskell %{pkgname} library}\
|
%{?common_summary:Summary: %{common_summary}}\
|
||||||
Group: System Environment/Libraries\
|
Group: System Environment/Libraries\
|
||||||
%{?1:Version: %{pkgver}}\
|
%{?1:Version: %{pkgver}}\
|
||||||
%{-l:License: %{-l*}}\
|
%{-l:License: %{-l*}}\
|
||||||
@ -135,10 +142,12 @@ Group: System Environment/Libraries\
|
|||||||
%define pkgname %{?1}%{!?1:%{pkg_name}}\
|
%define pkgname %{?1}%{!?1:%{pkg_name}}\
|
||||||
%define basepkg ghc-%{pkgname}\
|
%define basepkg ghc-%{pkgname}\
|
||||||
%description -n %{basepkg}\
|
%description -n %{basepkg}\
|
||||||
%{?common_description}%{!?common_description:Haskell %{pkgname} library.}\
|
%if %{defined common_description}\
|
||||||
|
%{common_description}\
|
||||||
%if %{defined ghc_version} && %{undefined ghc_without_shared}\
|
%if %{defined ghc_version} && %{undefined ghc_without_shared}\
|
||||||
This package provides the shared library.\
|
This package provides the shared library.\
|
||||||
%endif
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
# ghc_binlib_package [-c cdepslist] [-h pkgdepslist] [-l licensetag] [-x] [name] [version]
|
# ghc_binlib_package [-c cdepslist] [-h pkgdepslist] [-l licensetag] [-x] [name] [version]
|
||||||
%ghc_binlib_package(c:h:l:x)\
|
%ghc_binlib_package(c:h:l:x)\
|
||||||
@ -181,7 +190,7 @@ This package provides the shared library.\
|
|||||||
%define pkgver %{?2}%{!?2:%{version}}\
|
%define pkgver %{?2}%{!?2:%{version}}\
|
||||||
%define basepkg ghc-%{pkgname}\
|
%define basepkg ghc-%{pkgname}\
|
||||||
%package -n %{basepkg}-devel\
|
%package -n %{basepkg}-devel\
|
||||||
Summary: %{?common_summary}%{!?common_summary:Haskell %{pkgname} library} development files\
|
%{?common_summary:Summary: %{common_summary} development files}\
|
||||||
Group: Development/Libraries\
|
Group: Development/Libraries\
|
||||||
%{?1:Version: %{pkgver}}\
|
%{?1:Version: %{pkgver}}\
|
||||||
%{-l:License: %{-l*}}\
|
%{-l:License: %{-l*}}\
|
||||||
@ -202,9 +211,11 @@ Provides: %{basepkg}-prof = %{pkgver}-%{release}\
|
|||||||
%define pkgname %{?1}%{!?1:%{pkg_name}}\
|
%define pkgname %{?1}%{!?1:%{pkg_name}}\
|
||||||
%define basepkg ghc-%{pkgname}\
|
%define basepkg ghc-%{pkgname}\
|
||||||
%description -n %{basepkg}-devel\
|
%description -n %{basepkg}-devel\
|
||||||
%{?common_description}%{!?common_description:Haskell %{pkgname} library.}\
|
%if %{defined common_description}
|
||||||
|
%{common_description}\
|
||||||
\
|
\
|
||||||
This package contains the development files.
|
This package contains the development files.\
|
||||||
|
%endif
|
||||||
|
|
||||||
# ghc_devel_post_postun
|
# ghc_devel_post_postun
|
||||||
%ghc_devel_post_postun\
|
%ghc_devel_post_postun\
|
||||||
@ -250,29 +261,25 @@ find %{buildroot} -type f -exec sh -c "file {} | grep -q 'dynamically linked'" \
|
|||||||
%if %{undefined without_haddock}\
|
%if %{undefined without_haddock}\
|
||||||
%cabal haddock %{!?without_hscolour:%(if [ -x %{_bindir}/HsColour ]; then echo --hyperlink-source; fi)}\
|
%cabal haddock %{!?without_hscolour:%(if [ -x %{_bindir}/HsColour ]; then echo --hyperlink-source; fi)}\
|
||||||
%endif\
|
%endif\
|
||||||
%{?1:cd -}\
|
%{?1:cd ..}\
|
||||||
%{nil}
|
%{nil}
|
||||||
|
|
||||||
# install bin package
|
# install bin package
|
||||||
%ghc_bin_install\
|
%ghc_bin_install\
|
||||||
%if %{undefined ghc_bootstrapping}\
|
|
||||||
%global _use_internal_dependency_generator 0\
|
%global _use_internal_dependency_generator 0\
|
||||||
%global __find_requires %{_rpmconfigdir}/ghc-deps.sh --requires %{buildroot}%{ghclibdir}\
|
%global __find_requires %{_rpmconfigdir}/ghc-deps.sh --requires %{buildroot}%{ghclibdir}\
|
||||||
%endif\
|
|
||||||
%cabal_install\
|
%cabal_install\
|
||||||
%ghc_strip_dynlinked
|
%ghc_strip_dynlinked
|
||||||
|
|
||||||
# ghc_lib_install [name] [version]
|
# ghc_lib_install [name] [version]
|
||||||
%ghc_lib_install()\
|
%ghc_lib_install()\
|
||||||
%if %{undefined ghc_bootstrapping}\
|
|
||||||
%global _use_internal_dependency_generator 0\
|
%global _use_internal_dependency_generator 0\
|
||||||
%global __find_provides %{_rpmconfigdir}/ghc-deps.sh --provides %{buildroot}%{ghclibdir}\
|
%global __find_provides %{_rpmconfigdir}/ghc-deps.sh --provides %{buildroot}%{ghclibdir}\
|
||||||
%global __find_requires %{_rpmconfigdir}/ghc-deps.sh --requires %{buildroot}%{ghclibdir}\
|
%global __find_requires %{_rpmconfigdir}/ghc-deps.sh --requires %{buildroot}%{ghclibdir}\
|
||||||
%endif\
|
|
||||||
%{?1:cd %1-%2}\
|
%{?1:cd %1-%2}\
|
||||||
%cabal_install\
|
%cabal_install\
|
||||||
%cabal_pkg_conf\
|
%cabal_pkg_conf\
|
||||||
%{?1:cd -}\
|
%{?1:cd ..}\
|
||||||
%ghc_gen_filelists\
|
%ghc_gen_filelists\
|
||||||
%{!?1:%ghc_strip_dynlinked}\
|
%{!?1:%ghc_strip_dynlinked}\
|
||||||
%{nil}
|
%{nil}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
%global macros_file %{_sysconfdir}/rpm/macros.ghc
|
%global macros_file %{_sysconfdir}/rpm/macros.ghc
|
||||||
|
|
||||||
Name: ghc-rpm-macros
|
Name: ghc-rpm-macros
|
||||||
Version: 0.90
|
Version: 0.91
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Macros for building packages for GHC
|
Summary: Macros for building packages for GHC
|
||||||
|
|
||||||
@ -60,6 +60,11 @@ EOF
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri May 25 2012 Jens Petersen <petersen@redhat.com> - 0.91-1
|
||||||
|
- only build ghci .o library files on ghc_arches_with_ghci
|
||||||
|
- support meta packages like haskell-platform without base lib files
|
||||||
|
- make it possible not to have to use common_summary and common_description
|
||||||
|
|
||||||
* Mon Mar 19 2012 Jens Petersen <petersen@redhat.com> - 0.90-1
|
* Mon Mar 19 2012 Jens Petersen <petersen@redhat.com> - 0.90-1
|
||||||
- use new rpm metadata hash format for ghc-7.4
|
- use new rpm metadata hash format for ghc-7.4
|
||||||
- drop prof meta hash data
|
- drop prof meta hash data
|
||||||
|
Loading…
Reference in New Issue
Block a user