various minor backports
- add new names ghc_html_dir, ghc_html_libraries_dir, and ghc_html_pkg_dir - correct cabal-tweak-flag error message for missing flag (#1184508) - ghc-deps.sh: support ghc-pkg for ghc builds <= 7.4.2 as well - improve ghc_fix_dynamic_rpath not to assume cwd = pkg_name - fix warning in macros.ghc-extra about unused pkgnamever
This commit is contained in:
parent
26bbb3510b
commit
579a14565d
@ -29,7 +29,7 @@ if [ $(echo $CABALFILE | wc -w) -ne 1 ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if ! grep -q -i "^flag *$FLAG" $CABALFILE; then
|
if ! grep -q -i "^flag *$FLAG" $CABALFILE; then
|
||||||
echo "$CABALFILE does have flag $FLAG"
|
echo "$CABALFILE does not have flag $FLAG"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
20
ghc-deps.sh
20
ghc-deps.sh
@ -15,11 +15,21 @@ PKGBASEDIR=$2
|
|||||||
PKGCONFDIR=$PKGBASEDIR/package.conf.d
|
PKGCONFDIR=$PKGBASEDIR/package.conf.d
|
||||||
GHC_VER=$(basename $PKGBASEDIR | sed -e s/ghc-//)
|
GHC_VER=$(basename $PKGBASEDIR | sed -e s/ghc-//)
|
||||||
|
|
||||||
if [ -x "$PKGBASEDIR/bin/ghc-pkg" ]; then
|
# for a ghc build use the new ghc-pkg
|
||||||
# ghc-7.8
|
INPLACE_GHCPKG=$PKGBASEDIR/../../bin/ghc-pkg-$GHC_VER
|
||||||
GHC_PKG="$PKGBASEDIR/bin/ghc-pkg --global-package-db=$PKGCONFDIR"
|
|
||||||
elif [ -x "$PKGBASEDIR/ghc-pkg" ]; then
|
if [ -x "$INPLACE_GHCPKG" ]; then
|
||||||
GHC_PKG="$PKGBASEDIR/ghc-pkg --global-package-db=$PKGCONFDIR"
|
case $GHC_VER in
|
||||||
|
7.8.*)
|
||||||
|
GHC_PKG="$PKGBASEDIR/bin/ghc-pkg --global-package-db=$PKGCONFDIR"
|
||||||
|
;;
|
||||||
|
7.6.*)
|
||||||
|
GHC_PKG="$PKGBASEDIR/ghc-pkg --global-package-db=$PKGCONFDIR"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
GHC_PKG="$PKGBASEDIR/ghc-pkg --global-conf=$PKGCONFDIR"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
else
|
else
|
||||||
GHC_PKG="/usr/bin/ghc-pkg-${GHC_VER}"
|
GHC_PKG="/usr/bin/ghc-pkg-${GHC_VER}"
|
||||||
fi
|
fi
|
||||||
|
@ -26,12 +26,21 @@ fi
|
|||||||
# install
|
# install
|
||||||
%cabal_install %cabal copy --destdir=%{buildroot} -v
|
%cabal_install %cabal copy --destdir=%{buildroot} -v
|
||||||
|
|
||||||
# root dir for ghc docs
|
# root dir for ghc docs (used by ghc.spec)
|
||||||
|
%ghc_html_dir %{_docdir}/ghc/html
|
||||||
|
# deprecates
|
||||||
%ghcdocbasedir %{_docdir}/ghc/html
|
%ghcdocbasedir %{_docdir}/ghc/html
|
||||||
# libraries doc dir
|
|
||||||
|
# libraries doc dir (internal)
|
||||||
|
%ghc_html_libraries_dir %{ghc_html_dir}/libraries
|
||||||
|
# deprecates
|
||||||
%ghclibdocdir %{ghcdocbasedir}/libraries
|
%ghclibdocdir %{ghcdocbasedir}/libraries
|
||||||
|
|
||||||
# pkg doc dir
|
# pkg doc dir
|
||||||
%ghcpkgdocdir %{ghcdocbasedir}/libraries/%{pkg_name}-%{version}
|
%ghc_html_pkg_dir %{ghc_html_libraries_dir}/%{pkg_name}-%{version}
|
||||||
|
# deprecates
|
||||||
|
%ghcpkgdocdir %{ghclibdocdir}/%{pkg_name}-%{version}
|
||||||
|
|
||||||
# top library dir
|
# top library dir
|
||||||
%ghclibdir %{_libdir}/ghc-%{ghc_version}
|
%ghclibdir %{_libdir}/ghc-%{ghc_version}
|
||||||
|
|
||||||
@ -107,8 +116,8 @@ find %{buildroot} -type f -exec sh -c "file {} | grep -q 'dynamically linked'" \
|
|||||||
|
|
||||||
# ghc_clear_execstack
|
# ghc_clear_execstack
|
||||||
%ghc_clear_execstack\
|
%ghc_clear_execstack\
|
||||||
if [ -d "%{buildroot}%{_bindir}" ]; then\
|
if [ -d "%{buildroot}%{_bindir}" -a -x "%{_bindir}/execstack" ]; then\
|
||||||
find %{buildroot}%{_bindir} -type f -exec sh -c "file {} | grep -q ' ELF '" \\; -exec execstack -c "{}" \\;\
|
find %{buildroot}%{_bindir} -type f -exec sh -c "file {} | grep -q ' ELF '" \\; -exec %{_bindir}/execstack -c "{}" \\;\
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# install bin package
|
# install bin package
|
||||||
@ -133,18 +142,17 @@ fi
|
|||||||
%{nil}
|
%{nil}
|
||||||
|
|
||||||
# ghc_fix_dynamic_rpath prog ...
|
# ghc_fix_dynamic_rpath prog ...
|
||||||
# (assumes cwd = pkg_name!)
|
|
||||||
%ghc_fix_dynamic_rpath()\
|
%ghc_fix_dynamic_rpath()\
|
||||||
%if %{undefined ghc_without_dynamic}\
|
%if %{undefined ghc_without_dynamic}\
|
||||||
if ! type chrpath > /dev/null; then exit 1; fi\
|
if ! type chrpath > /dev/null; then exit 1; fi\
|
||||||
PDIR=$(cd ..; pwd)\
|
PDIR=$(pwd)\
|
||||||
for i in %*; do\
|
for i in %*; do\
|
||||||
PROG=%{buildroot}%{_bindir}/$i\
|
PROG=%{buildroot}%{_bindir}/$i\
|
||||||
if [ -x "$PROG" ]; then\
|
if [ -x "$PROG" ]; then\
|
||||||
RPATH=$(chrpath $PROG | sed -e "s@^$PROG: RPATH=@@")\
|
RPATH=$(chrpath $PROG | sed -e "s@^$PROG: RPATH=@@")\
|
||||||
case $RPATH in\
|
case $RPATH in\
|
||||||
*$PDIR*)\
|
*$PDIR*)\
|
||||||
NEWRPATH=$(echo $RPATH | sed -e "s@$PDIR@%{ghclibdir}@g" -e "s@/dist/build@@g")\
|
NEWRPATH=$(echo $RPATH | sed -e "s@$PDIR/dist/build@%{ghclibdir}/%{pkg_name}-%{version}@g")\
|
||||||
chrpath -r $NEWRPATH $PROG\
|
chrpath -r $NEWRPATH $PROG\
|
||||||
;;\
|
;;\
|
||||||
esac\
|
esac\
|
||||||
|
@ -4,8 +4,7 @@
|
|||||||
%ghc_lib_subpackage(c:l:x)\
|
%ghc_lib_subpackage(c:l:x)\
|
||||||
%define pkgname %{?1}%{!?1:%{pkg_name}}\
|
%define pkgname %{?1}%{!?1:%{pkg_name}}\
|
||||||
%define pkgver %{?2}%{!?2:%{version}}\
|
%define pkgver %{?2}%{!?2:%{version}}\
|
||||||
%define pkgnamever %{pkgname}-%{pkgver}\
|
%{!-x:%{?1:%global ghc_packages_list %{?ghc_packages_list} %{pkgname}-%{pkgver}}}\
|
||||||
%{!-x:%{?1:%global ghc_packages_list %{?ghc_packages_list} %{pkgnamever}}}\
|
|
||||||
%define basepkg ghc-%{pkgname}\
|
%define basepkg ghc-%{pkgname}\
|
||||||
%package -n %{basepkg}\
|
%package -n %{basepkg}\
|
||||||
Summary: Haskell %{pkgname} library\
|
Summary: Haskell %{pkgname} library\
|
||||||
|
@ -67,7 +67,6 @@ install -p -D -m 0755 %{SOURCE3} %{buildroot}/%{_prefix}/lib/rpm/ghc-deps.sh
|
|||||||
install -p -D -m 0755 %{SOURCE4} %{buildroot}/%{_bindir}/cabal-tweak-dep-ver
|
install -p -D -m 0755 %{SOURCE4} %{buildroot}/%{_bindir}/cabal-tweak-dep-ver
|
||||||
install -p -D -m 0755 %{SOURCE5} %{buildroot}/%{_bindir}/cabal-tweak-flag
|
install -p -D -m 0755 %{SOURCE5} %{buildroot}/%{_bindir}/cabal-tweak-flag
|
||||||
|
|
||||||
# this is why this package is now arch-dependent:
|
|
||||||
# turn off shared libs and dynamic linking on secondary archs
|
# turn off shared libs and dynamic linking on secondary archs
|
||||||
%ifnarch %{ix86} x86_64
|
%ifnarch %{ix86} x86_64
|
||||||
cat >> %{buildroot}/%{macros_dir}/macros.ghc <<EOF
|
cat >> %{buildroot}/%{macros_dir}/macros.ghc <<EOF
|
||||||
@ -92,6 +91,13 @@ EOF
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jan 22 2015 Jens Petersen <petersen@redhat.com>
|
||||||
|
- add new names ghc_html_dir, ghc_html_libraries_dir, and ghc_html_pkg_dir
|
||||||
|
- correct cabal-tweak-flag error message for missing flag (#1184508)
|
||||||
|
- ghc-deps.sh: support ghc-pkg for ghc builds <= 7.4.2 as well
|
||||||
|
- improve ghc_fix_dynamic_rpath not to assume cwd = pkg_name
|
||||||
|
- fix warning in macros.ghc-extra about unused pkgnamever
|
||||||
|
|
||||||
* Sat May 17 2014 Jens Petersen <petersen@redhat.com> - 1.0.7.4-1
|
* Sat May 17 2014 Jens Petersen <petersen@redhat.com> - 1.0.7.4-1
|
||||||
- do bcond cabal configure --enable-tests also for Bin packages
|
- do bcond cabal configure --enable-tests also for Bin packages
|
||||||
- enable configure bcond check for tests
|
- enable configure bcond check for tests
|
||||||
|
Loading…
Reference in New Issue
Block a user