disable testsuite, bootstrap and build fixes
This commit is contained in:
parent
f77e76b10e
commit
5219736e17
52
ghc.spec
52
ghc.spec
@ -1,11 +1,14 @@
|
|||||||
# perf production build (disable for quick build)
|
# perf production build (disable for quick build)
|
||||||
%bcond_without perf_build
|
%bcond_without perf_build
|
||||||
|
|
||||||
|
# to handle RCs
|
||||||
|
%global ghc_release %{version}
|
||||||
|
|
||||||
# make sure ghc libraries' ABI hashes unchanged
|
# make sure ghc libraries' ABI hashes unchanged
|
||||||
%bcond_without abicheck
|
%bcond_without abicheck
|
||||||
|
|
||||||
# run testsuite
|
# run testsuite (takes time and not really being using)
|
||||||
%bcond_without testsuite
|
%bcond_with testsuite
|
||||||
# build profiling libraries
|
# build profiling libraries
|
||||||
%bcond_without prof
|
%bcond_without prof
|
||||||
# build docs (haddock and manuals)
|
# build docs (haddock and manuals)
|
||||||
@ -13,12 +16,8 @@
|
|||||||
# <https://ghc.haskell.org/trac/ghc/ticket/15190>
|
# <https://ghc.haskell.org/trac/ghc/ticket/15190>
|
||||||
%bcond_without docs
|
%bcond_without docs
|
||||||
|
|
||||||
# to handle RCs
|
|
||||||
%global ghc_release %{version}
|
|
||||||
|
|
||||||
# 8.2 needs llvm-3.9
|
# 8.2 needs llvm-3.9
|
||||||
%global llvm_major 3.9
|
%global llvm_major 3.9
|
||||||
|
|
||||||
%global ghc_llvm_archs armv7hl aarch64
|
%global ghc_llvm_archs armv7hl aarch64
|
||||||
|
|
||||||
Name: ghc
|
Name: ghc
|
||||||
@ -63,10 +62,10 @@ Patch28: ghc-Debian-x32-use-native-x86_64-insn.patch
|
|||||||
# and retired arches: alpha sparcv9 armv5tel
|
# and retired arches: alpha sparcv9 armv5tel
|
||||||
# see also deprecated ghc_arches defined in /etc/rpm/macros.ghc-srpm by redhat-rpm-macros
|
# see also deprecated ghc_arches defined in /etc/rpm/macros.ghc-srpm by redhat-rpm-macros
|
||||||
|
|
||||||
%if %{with abicheck}
|
BuildRequires: ghc-compiler
|
||||||
BuildRequires: ghc-compiler = %{version}
|
|
||||||
# for ABI hash checking
|
# for ABI hash checking
|
||||||
BuildRequires: ghc = %{version}
|
%if %{with abicheck}
|
||||||
|
BuildRequires: ghc
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: ghc-rpm-macros-extra >= 1.8
|
BuildRequires: ghc-rpm-macros-extra >= 1.8
|
||||||
BuildRequires: ghc-binary-devel
|
BuildRequires: ghc-binary-devel
|
||||||
@ -86,7 +85,7 @@ BuildRequires: python3
|
|||||||
%endif
|
%endif
|
||||||
%if %{with docs}
|
%if %{with docs}
|
||||||
# for /usr/bin/sphinx-build
|
# for /usr/bin/sphinx-build
|
||||||
BuildRequires: python2-sphinx
|
BuildRequires: python-sphinx
|
||||||
%endif
|
%endif
|
||||||
%ifarch %{ghc_llvm_archs}
|
%ifarch %{ghc_llvm_archs}
|
||||||
BuildRequires: llvm%{llvm_major}
|
BuildRequires: llvm%{llvm_major}
|
||||||
@ -302,7 +301,7 @@ BuildFlavour = quick
|
|||||||
%endif
|
%endif
|
||||||
GhcLibWays = v dyn %{?with_prof:p}
|
GhcLibWays = v dyn %{?with_prof:p}
|
||||||
%if %{with docs}
|
%if %{with docs}
|
||||||
HADDOCK_DOCS = yes
|
#HADDOCK_DOCS = yes
|
||||||
BUILD_MAN = yes
|
BUILD_MAN = yes
|
||||||
%else
|
%else
|
||||||
HADDOCK_DOCS = no
|
HADDOCK_DOCS = no
|
||||||
@ -360,14 +359,15 @@ make %{?_smp_mflags}
|
|||||||
%install
|
%install
|
||||||
make DESTDIR=%{buildroot} install
|
make DESTDIR=%{buildroot} install
|
||||||
|
|
||||||
|
%if %{defined _ghcdynlibdir}
|
||||||
mv %{buildroot}%{ghclibdir}/*/libHS*ghc%{ghc_version}.so %{buildroot}%{_libdir}/
|
mv %{buildroot}%{ghclibdir}/*/libHS*ghc%{ghc_version}.so %{buildroot}%{_libdir}/
|
||||||
for i in $(find %{buildroot} -type f -exec sh -c "file {} | grep -q 'dynamically linked'" \; -print); do
|
for i in $(find %{buildroot} -type f -exec sh -c "file {} | grep -q 'dynamically linked'" \; -print); do
|
||||||
chrpath -d $i
|
chrpath -d $i
|
||||||
done
|
done
|
||||||
|
|
||||||
for i in %{buildroot}%{ghclibdir}/package.conf.d/*.conf; do
|
for i in %{buildroot}%{ghclibdir}/package.conf.d/*.conf; do
|
||||||
sed -i -e 's!^dynamic-library-dirs: .*!dynamic-library-dirs: %{_libdir}!' $i
|
sed -i -e 's!^dynamic-library-dirs: .*!dynamic-library-dirs: %{_libdir}!' $i
|
||||||
done
|
done
|
||||||
|
%endif
|
||||||
|
|
||||||
for i in %{ghc_packages_list}; do
|
for i in %{ghc_packages_list}; do
|
||||||
name=$(echo $i | sed -e "s/\(.*\)-.*/\1/")
|
name=$(echo $i | sed -e "s/\(.*\)-.*/\1/")
|
||||||
@ -380,8 +380,7 @@ echo "%%license libraries/$name/LICENSE" >> ghc-$name.files
|
|||||||
%endif
|
%endif
|
||||||
done
|
done
|
||||||
|
|
||||||
# ghc-base should own ghclibdir
|
echo "%%dir %{ghclibdir}" >> ghc-base%{?_ghcdynlibdir:-devel}.files
|
||||||
echo "%%dir %{ghclibdir}" >> ghc-base-devel.files
|
|
||||||
|
|
||||||
%ghc_gen_filelists ghc-boot %{ghc_version_override}
|
%ghc_gen_filelists ghc-boot %{ghc_version_override}
|
||||||
%ghc_gen_filelists ghc %{ghc_version_override}
|
%ghc_gen_filelists ghc %{ghc_version_override}
|
||||||
@ -403,21 +402,26 @@ echo "%%license libraries/LICENSE.%1" >> ghc-%2.files\
|
|||||||
%merge_filelist ghc-prim base
|
%merge_filelist ghc-prim base
|
||||||
|
|
||||||
# add rts libs
|
# add rts libs
|
||||||
|
%if %{defined _ghcdynlibdir}
|
||||||
echo "%{ghclibdir}/rts" >> ghc-base-devel.files
|
echo "%{ghclibdir}/rts" >> ghc-base-devel.files
|
||||||
ls %{buildroot}%{_libdir}/libHSrts*.so >> ghc-base.files
|
%else
|
||||||
|
echo "%%dir %{ghclibdir}/rts" >> ghc-base.files
|
||||||
|
ls -d %{buildroot}%{ghclibdir}/rts/lib*.a >> ghc-base-devel.files
|
||||||
|
%endif
|
||||||
|
ls %{buildroot}%{?_ghcdynlibdir}%{!?_ghcdynlibdir:%{ghclibdir}/rts}/libHSrts*.so >> ghc-base.files
|
||||||
%if 0%{?rhel} && 0%{?rhel} < 7
|
%if 0%{?rhel} && 0%{?rhel} < 7
|
||||||
ls %{buildroot}%{ghclibdir}/rts/libffi.so.* >> ghc-base.files
|
ls %{buildroot}%{ghclibdir}/rts/libffi.so.* >> ghc-base.files
|
||||||
%endif
|
%endif
|
||||||
|
%if %{defined _ghcdynlibdir}
|
||||||
sed -i -e 's!^library-dirs: %{ghclibdir}/rts!&\ndynamic-library-dirs: %{_libdir}!' %{buildroot}%{ghclibdir}/package.conf.d/rts.conf
|
sed -i -e 's!^library-dirs: %{ghclibdir}/rts!&\ndynamic-library-dirs: %{_libdir}!' %{buildroot}%{ghclibdir}/package.conf.d/rts.conf
|
||||||
|
%endif
|
||||||
sed -i -e "s|^%{buildroot}||g" ghc-base.files
|
|
||||||
|
|
||||||
ls -d %{buildroot}%{ghclibdir}/package.conf.d/rts.conf %{buildroot}%{ghclibdir}/include >> ghc-base-devel.files
|
ls -d %{buildroot}%{ghclibdir}/package.conf.d/rts.conf %{buildroot}%{ghclibdir}/include >> ghc-base-devel.files
|
||||||
%if 0%{?rhel} && 0%{?rhel} < 7
|
%if 0%{?rhel} && 0%{?rhel} < 7
|
||||||
ls %{buildroot}%{ghclibdir}/rts/libffi.so >> ghc-base-devel.files
|
ls %{buildroot}%{ghclibdir}/rts/libffi.so >> ghc-base-devel.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
sed -i -e "s|^%{buildroot}||g" ghc-base-devel.files
|
sed -i -e "s|^%{buildroot}||g" ghc-base*.files
|
||||||
|
|
||||||
# these are handled as alternatives
|
# these are handled as alternatives
|
||||||
for i in hsc2hs runhaskell; do
|
for i in hsc2hs runhaskell; do
|
||||||
@ -493,6 +497,8 @@ if [ "%{version}" = "$(ghc --numeric-version)" ]; then
|
|||||||
echo "ghc ABI hash change: aborting build!" >&2
|
echo "ghc ABI hash change: aborting build!" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
else
|
||||||
|
echo "ABI hash checks skipped: GHC changed from $(ghc --numeric-version) to %{version}"
|
||||||
fi
|
fi
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -579,7 +585,7 @@ fi
|
|||||||
%{ghclibdir}/latex
|
%{ghclibdir}/latex
|
||||||
%if %{with docs}
|
%if %{with docs}
|
||||||
# https://ghc.haskell.org/trac/ghc/ticket/12939
|
# https://ghc.haskell.org/trac/ghc/ticket/12939
|
||||||
#%%{_mandir}/man1/ghc.*
|
#%%{_mandir}/man1/ghc.1*
|
||||||
%endif
|
%endif
|
||||||
%dir %{ghc_html_dir}/libraries
|
%dir %{ghc_html_dir}/libraries
|
||||||
%{ghc_html_dir}/libraries/gen_contents_index
|
%{ghc_html_dir}/libraries/gen_contents_index
|
||||||
@ -609,9 +615,7 @@ fi
|
|||||||
%files manual
|
%files manual
|
||||||
## needs pandoc
|
## needs pandoc
|
||||||
#%%{ghc_html_dir}/Cabal
|
#%%{ghc_html_dir}/Cabal
|
||||||
%if %{with docs}
|
|
||||||
%{ghc_html_dir}/haddock
|
%{ghc_html_dir}/haddock
|
||||||
%endif
|
|
||||||
%{ghc_html_dir}/index.html
|
%{ghc_html_dir}/index.html
|
||||||
%{ghc_html_dir}/users_guide
|
%{ghc_html_dir}/users_guide
|
||||||
%endif
|
%endif
|
||||||
@ -621,10 +625,12 @@ fi
|
|||||||
* Mon May 28 2018 Jens Petersen <petersen@redhat.com> - 8.2.2-68
|
* Mon May 28 2018 Jens Petersen <petersen@redhat.com> - 8.2.2-68
|
||||||
- fix sphinx-build version detection
|
- fix sphinx-build version detection
|
||||||
- merge bcond for haddock and manual
|
- merge bcond for haddock and manual
|
||||||
|
- disable the testsuite to speed up builds
|
||||||
|
- version bootstrap and packaging fixes and tweaks
|
||||||
|
|
||||||
* Mon May 28 2018 Jens Petersen <petersen@redhat.com> - 8.2.2-67
|
* Mon May 28 2018 Jens Petersen <petersen@redhat.com> - 8.2.2-67
|
||||||
- move manuals to ghc-manual.noarch
|
- move manuals to new ghc-manual (noarch)
|
||||||
- rename ghc-doc-index to ghc-doc-cron.noarch
|
- rename ghc-doc-index to ghc-doc-cron (noarch)
|
||||||
- ghost the ghc-doc-index local state files
|
- ghost the ghc-doc-index local state files
|
||||||
- ghost some newer libraries index files
|
- ghost some newer libraries index files
|
||||||
- simplify and extend bcond for build configuration
|
- simplify and extend bcond for build configuration
|
||||||
|
Loading…
Reference in New Issue
Block a user