File mtl-fc6-070717.patch of Package mtl

diff -Nur mtl-2.1.2-23.orig/configure.in mtl-2.1.2-23/configure.in
--- mtl-2.1.2-23.orig/configure.in	2007-04-05 21:36:21.000000000 +0200
+++ mtl-2.1.2-23/configure.in	2007-07-17 14:25:54.000000000 +0200
@@ -56,7 +56,7 @@
 BACKEND=""
 MATHLIB=""
 LDOUT="-o "
-FORTLIBS=""
+# FORTLIBS=""
 
 case "$compiler" in
      kai*)               # KAI C++  http://www.kai.com/
@@ -84,15 +84,15 @@
        echo "Configuring for GNU C++"
        CXX_PICKY_FLAGS="-Wall"
        # BZ_SET_COMPILER($withval,"g++","-ftemplate-depth-30 $CXX_PICKY_FLAGS")
-       CXX="g++"
-       CXXFLAGS="-ftemplate-depth-30 $CXX_PICKY_FLAGS"
-       CXX_OPTIMIZE_FLAGS="-O2 -funroll-loops -fstrict-aliasing -fno-gcse"
-       CXX_DEBUG_FLAGS="-g -DBZ_DEBUG"
-       CXXLD="$CXX"
-       F77=g77
-       F77_OPTIMIZE_FLAGS="-O2 -funroll-loops"
-       FORTLIBS=-lg2c
-       CXXFFLAGS="-DMTL_FORTRAN_SYMBOLS_WITH_DOUBLE_TRAILING_UNDERSCORES"
+       CXX=${CXX:-"g++"}
+       CXXFLAGS=${CXXFLAGS:-"-ftemplate-depth-30 $CXX_PICKY_FLAGS"}
+       CXX_OPTIMIZE_FLAGS=${CXX_OPTIMIZE_FLAGS=$:-"-O2 -funroll-loops -fstrict-aliasing -fno-gcse"}
+       CXX_DEBUG_FLAGS=${CXX_DEBUG_FLAGS=$:-"-g -DBZ_DEBUG"}
+       CXXLD=${CXXLD:-"$CXX"}
+       F77=${F77:-g77}
+       F77_OPTIMIZE_FLAGS=${F77_OPTIMIZE_FLAGS:-"-O2 -funroll-loops"}
+       FORTLIBS=${FORTLIBS:-"-lg2c"}
+       CXXFFLAGS=${CXXFFLAGS:-"-DMTL_FORTRAN_SYMBOLS_WITH_DOUBLE_TRAILING_UNDERSCORES"}
      ;;
      msvc*) # Microsoft Visual C++
        echo "Configuring for Microsoft Visual C++"
@@ -126,18 +126,18 @@
 # Set platform-specific fortran compilers and optimization settings
 
 if test "$GXX" = "yes"; then
-    F77=g77
-    F77_OPTIMIZE_FLAGS="-O2 -funroll-loops"
-    FORTLIBS=-lg2c
-    MATHLIB="-lm"
+    F77=${F77:-g77}
+    F77_OPTIMIZE_FLAGS=${F77_OPTIMIZE_FLAGS:-"-O2 -funroll-loops"}
+    FORTLIBS=${FORTLIBS:-"-lg2c"}
+    MATHLIB=${MATHLIB:-"-lm"}
 else
 case "$target" in
   *linux*)
     echo "Linux: assuming g77 fortran compiler"
-    F77=g77
-    F77_OPTIMIZE_FLAGS="-O2 -funroll-loops"
-    FORTLIBS=-lg2c
-    MATHLIB="-lm"
+    F77=${F77:-g77}
+    F77_OPTIMIZE_FLAGS=${F77_OPTIMIZE_FLAGS:-"-O2 -funroll-loops"}
+    FORTLIBS=${FORTLIBS:-"-lg2c"}
+    MATHLIB=${MATHLIB:-"-lm"}
   ;;
   *aix*)
     echo "AIX: assuming f77 and xlf90"
@@ -389,14 +389,13 @@
 # currently defined fortran compiler 
 
 # Check how to link to fortran -- will require calling fortran
-MTL_PROG_F77
+AC_PROG_F77
 AC_F77_LIBRARY_LDFLAGS
 
 # AC_CHECK_LIB (LIBRARY, FUNCTION [, ACTION-IF-FOUND [,
 #          ACTION-IF-NOT-FOUND [, OTHER-LIBRARIES]]])
 # AC_SEARCH_LIBS
 
-
 AC_CHECK_LIB(blas, main, 
   [ AC_MSG_RESULT(BLAS found)
     CXXFFLAGS="$CXXFLAGS -DMTL_USE_BLAS" 
diff -Nur mtl-2.1.2-23.orig/mtl/lapack_interface.h mtl-2.1.2-23/mtl/lapack_interface.h
--- mtl-2.1.2-23.orig/mtl/lapack_interface.h	2007-04-10 22:03:10.000000000 +0200
+++ mtl-2.1.2-23/mtl/lapack_interface.h	2007-07-17 14:26:27.000000000 +0200
@@ -313,11 +313,11 @@
 
 
 void dorgqr_(const int& m, const int& n, const int& k,
-	     double da[], const int& lda, double dtau[], 
+	     double da[], const int& lda, const double dtau[], 
 	     double dwork[], const int& ldwork, int& info);
 
 void sorgqr_(const int& m, const int& n, const int& k,
-	     float da[], const int& lda, float dtau[], 
+	     float da[], const int& lda, const float dtau[], 
 	     float dwork[], const int& ldwork, int& info);
 
 void dgesvd_(const char& jobu, const char& jobvt, const int& m, const int& n,
diff -Nur mtl-2.1.2-23.orig/mtl/mtl2lapack.h mtl-2.1.2-23/mtl/mtl2lapack.h
--- mtl-2.1.2-23.orig/mtl/mtl2lapack.h	2007-04-10 22:03:10.000000000 +0200
+++ mtl-2.1.2-23/mtl/mtl2lapack.h	2007-07-17 14:26:16.000000000 +0200
@@ -482,7 +482,7 @@
   }
 
   inline void orgqr(const int& m, const int& n, const int& k,
-		    double da[], int& lda, double dtau[], int& info)
+		    double da[], int& lda, const double dtau[], int& info)
   {
     int ldwork = 2*m;
     double* work = new double[ldwork];
@@ -491,7 +491,7 @@
   }
 
   inline void orgqr(const int& m, const int& n, const int& k,
-		    float da[], int& lda, float dtau[], int& info)
+		    float da[], int& lda, const float dtau[], int& info)
   {
     int ldwork = 2*m;
     float* work = new float[ldwork];
@@ -1111,8 +1111,7 @@
     int m = a.nrows();
     int n = a.ncols();
     int info;
-    mtl_lapack_dispatch::orgqr(m, n, tau.size(), a.data(), lda,
-			       tau.data(), info);
+    mtl_lapack_dispatch::orgqr(m, n, tau.size(), a.data(), lda, tau.data(), info);
     return info;
   }
 
openSUSE Build Service is sponsored by