gsl: remove disable-fma.patch
`NIX_CFLAGS_COMPILE = [ "-mno-fma" ];` disables FMA in a more reliable way. `platform.gcc.arch = "skylake"` resulting in gcc command line flag -march=skylake was able to enable FMA even with disable-fma.patch applied
This commit is contained in:
parent
5ad79dc4bb
commit
3d3f83dc51
@ -10,11 +10,6 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
NIX_CFLAGS_COMPILE = [ "-mno-fma" ]; # do not let -march=skylake to enable FMA (https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html)
|
NIX_CFLAGS_COMPILE = [ "-mno-fma" ]; # do not let -march=skylake to enable FMA (https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html)
|
||||||
|
|
||||||
patches = [
|
|
||||||
# ToDo: there might be more impurities than FMA support check
|
|
||||||
./disable-fma.patch # https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html
|
|
||||||
];
|
|
||||||
|
|
||||||
# https://lists.gnu.org/archive/html/bug-gsl/2015-11/msg00012.html
|
# https://lists.gnu.org/archive/html/bug-gsl/2015-11/msg00012.html
|
||||||
doCheck = stdenv.hostPlatform.system != "i686-linux" && stdenv.hostPlatform.system != "aarch64-linux";
|
doCheck = stdenv.hostPlatform.system != "i686-linux" && stdenv.hostPlatform.system != "aarch64-linux";
|
||||||
|
|
||||||
|
@ -1,32 +0,0 @@
|
|||||||
--- a/configure.ac 2011-09-22 16:13:22 +0000
|
|
||||||
+++ b/configure.ac 2011-11-26 23:55:24 +0000
|
|
||||||
@@ -381,6 +381,28 @@
|
|
||||||
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"
|
|
||||||
|
|
@ -11,8 +11,6 @@ stdenv.mkDerivation rec {
|
|||||||
NIX_CFLAGS_COMPILE = [ "-mno-fma" ]; # do not let -march=skylake to enable FMA (https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html)
|
NIX_CFLAGS_COMPILE = [ "-mno-fma" ]; # do not let -march=skylake to enable FMA (https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html)
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
# ToDo: there might be more impurities than FMA support check
|
|
||||||
./disable-fma.patch # https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html
|
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
name = "bug-39055.patch";
|
name = "bug-39055.patch";
|
||||||
url = "https://git.savannah.gnu.org/cgit/gsl.git/patch/?id=9cc12d";
|
url = "https://git.savannah.gnu.org/cgit/gsl.git/patch/?id=9cc12d";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user