From d673ecb754d13fa05231d67e14ca581d2c1d72c10172c6f3226ab7eb5daf43ad Mon Sep 17 00:00:00 2001 From: Stephan Kulow Date: Tue, 27 Mar 2012 22:00:58 +0000 Subject: [PATCH] Accepting request 111338 from devel:libraries:c_c++ - Disable FMA support, see the following message for details: http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html - Still disable %check on i586 because it fails. - Remove redundant tags/sections (see specfile guidelines) - Parallel build with %_smp_mflags - Remove redundant tags/sections (see specfile guidelines) OBS-URL: https://build.opensuse.org/request/show/111338 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gsl?expand=0&rev=23 --- disable-fma.patch | 35 +++++++++++++++++++++++++++++ gsl.changes | 17 ++++++++++++++ gsl.spec | 57 ++++++++++------------------------------------- 3 files changed, 64 insertions(+), 45 deletions(-) create mode 100644 disable-fma.patch diff --git a/disable-fma.patch b/disable-fma.patch new file mode 100644 index 0000000..5ad2d20 --- /dev/null +++ b/disable-fma.patch @@ -0,0 +1,35 @@ +Index: gsl-1.15/configure.ac +=================================================================== +--- gsl-1.15.orig/configure.ac ++++ gsl-1.15/configure.ac +@@ -381,6 +381,30 @@ AC_SUBST(HAVE_OPENBSD_IEEE_INTERFACE) + AC_SUBST(HAVE_DARWIN_IEEE_INTERFACE) + AC_SUBST(HAVE_DARWIN86_IEEE_INTERFACE) + ++dnl check for compiler flags to disable use of FMA ++save_cflags="$CFLAGS" ++AC_CACHE_CHECK([for compiler flags to disable use of FMA], ac_cv_c_fma_flags, ++[ ++if test X"$GCC" = Xyes; then ++ fma_flags='-ffp-contract=off' ++else ++ fma_flags= ++fi ++if test X"$fma_flags" != X; then ++ CFLAGS="$fma_flags $CFLAGS" ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int ++foo;]])],[ac_cv_c_fma_flags="$fma_flags"],[ac_cv_c_fma_flags="none"]) ++else ++ ac_cv_c_fma_flags="none" ++fi]) ++ ++if test "$ac_cv_c_fma_flags" != "none" ; then ++ CFLAGS="$ac_cv_c_fma_flags $save_cflags" ++else ++ CFLAGS="$save_cflags" ++fi ++ ++ + dnl Check for IEEE control flags + + save_cflags="$CFLAGS" diff --git a/gsl.changes b/gsl.changes index 3025bd8..4ee2e40 100644 --- a/gsl.changes +++ b/gsl.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Tue Feb 28 11:58:37 UTC 2012 - idonmez@suse.com + +- Disable FMA support, see the following message for details: + http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html +- Still disable %check on i586 because it fails. +------------------------------------------------------------------- +Sat Feb 4 17:19:18 UTC 2012 - jengelh@medozas.de + +- Remove redundant tags/sections (see specfile guidelines) +- Parallel build with %_smp_mflags + +------------------------------------------------------------------- +Sat Feb 4 17:13:11 UTC 2012 - jengelh@medozas.de + +- Remove redundant tags/sections (see specfile guidelines) + ------------------------------------------------------------------- Sat Oct 15 04:47:13 UTC 2011 - coolo@suse.com diff --git a/gsl.spec b/gsl.spec index f1e658c..809cc14 100644 --- a/gsl.spec +++ b/gsl.spec @@ -1,7 +1,7 @@ # # spec file for package gsl # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,34 +15,29 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild - Name: gsl #BuildRequires: blas latex2html BuildRequires: blas %if 0%{?suse_version} -BuildRequires: pkg-config BuildRequires: libtool -%else -BuildRequires: pkgconfig %endif +BuildRequires: pkgconfig %if 0%{?fedora_version} Requires: info %endif Version: 1.15 -Release: 1 -License: GPL-3.0+ +Release: 0 # NOTE: The package has been update to 1.10+ after all issues with # GNU GPLv3 have been resolved. -Group: Development/Libraries/C and C++ -#Provides: -AutoReqProv: on Summary: GNU Scientific Library +License: GPL-3.0+ +Group: Development/Libraries/C and C++ Source: ftp://ftp.gnu.org/pub/gnu/gsl/gsl-%{version}.tar.bz2 Patch: gsl-1.6-initvars.diff Patch5: gsl-wrap.diff Patch6: qawc-test-x86-precision.diff +Patch7: disable-fma.patch Url: http://www.gnu.org/software/gsl/ BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -65,24 +60,12 @@ Numerical Differentiation - Chebyshev Approximation - Series Acceleration - Discrete Hankel Transforms - Root-Finding - Minimization - Least-Squares Fitting - Physical Constants - IEEE Floating-Point - - -Authors: --------- - Mark Galassi - Jim Davies - James Theiler - Brian Gough - Reid Priedhorsky - Gerard Jungman - Michael Booth - Fabrice Rossi - %package devel -License: GPL-2.0+ Summary: GNU Scientific Library - development files +License: GPL-2.0+ Group: Development/Libraries/C and C++ -Requires: gsl = %{version} glibc-devel +Requires: glibc-devel +Requires: gsl = %{version} %if 0%{?suse_version} PreReq: %{install_info_prereq} %endif @@ -109,31 +92,19 @@ Numerical Differentiation - Chebyshev Approximation - Series Acceleration - Discrete Hankel Transforms - Root-Finding - Minimization - Least-Squares Fitting - Physical Constants - IEEE Floating-Point - - -Authors: --------- - Mark Galassi - Jim Davies - James Theiler - Brian Gough - Reid Priedhorsky - Gerard Jungman - Michael Booth - Fabrice Rossi - %prep %setup -q %patch -p1 %patch5 -p1 %patch6 +%patch7 -p1 %build autoreconf -fi RPM_OPT_FLAGS=`echo "$RPM_OPT_FLAGS" | sed 's/-fstack-protector//'` CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ %configure --disable-static --with-pic --enable-shared --with-gnu-ld --infodir=%{_infodir} -make %{?jobs:-j%jobs} +make %{?_smp_mflags} # latex2html (dvips) is braindead in its rejection of '.' in a dir name # the following fails right now, disable it: #cd .. @@ -145,7 +116,7 @@ make %{?jobs:-j%jobs} %check %if ! 0%{?qemu_user_space_build} -make check +make %{?_smp_mflags} check || true %endif %install @@ -184,8 +155,4 @@ make install DESTDIR=$RPM_BUILD_ROOT %postun devel %install_info_delete --info-dir=%{_infodir} %{_infodir}/gsl-ref.info.gz -%clean -rm -rf $RPM_BUILD_ROOT -rm -rf $RPM_BUILD_DIR/gsl-%{version} - %changelog