[DRE-commits] [ruby-lapack] 03/04: Refresh patches

Youhei SASAKI uwabami-guest at moszumanska.debian.org
Sun Mar 23 12:53:02 UTC 2014


This is an automated email from the git hooks/post-receive script.

uwabami-guest pushed a commit to branch master
in repository ruby-lapack.

commit 56afa390db67fdc7592755e6edeab33a04c31faf
Author: Youhei SASAKI <uwabami at gfd-dennou.org>
Date:   Sun Mar 23 19:33:35 2014 +0900

    Refresh patches
    
    Signed-off-by: Youhei SASAKI <uwabami at gfd-dennou.org>
---
 debian/patches/0001-Fix-Library-PATH.patch      |   63 +
 debian/patches/0002-Drop-RubyGems-Depends.patch |   21 +
 debian/patches/0003-Fix-typo.patch              | 3204 +++++++++++++++++++++++
 debian/patches/FixLibraryPath                   |   44 -
 debian/patches/series                           |    4 +-
 5 files changed, 3291 insertions(+), 45 deletions(-)

diff --git a/debian/patches/0001-Fix-Library-PATH.patch b/debian/patches/0001-Fix-Library-PATH.patch
new file mode 100644
index 0000000..7e1bc08
--- /dev/null
+++ b/debian/patches/0001-Fix-Library-PATH.patch
@@ -0,0 +1,63 @@
+From: Youhei SASAKI <uwabami at gfd-dennou.org>
+Date: Sun, 23 Mar 2014 19:35:40 +0900
+Subject: Fix Library PATH
+
+Signed-off-by: Youhei SASAKI <uwabami at gfd-dennou.org>
+---
+ ext/extconf.rb | 26 +++++++++++++-------------
+ 1 file changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/ext/extconf.rb b/ext/extconf.rb
+index fb06aa0..9ceab19 100644
+--- a/ext/extconf.rb
++++ b/ext/extconf.rb
+@@ -39,9 +39,9 @@ unless find_library("lapack", nil)
+ 
+   warn "LAPACK will be tried to find"
+ 
+-  name = with_config("blas-name","blas_LINUX.a")
++  name = with_config("blas-name","blas.a")
+   unless have_library(name)
+-    lib_path = with_config("blas-lib","/usr/local/lib")
++    lib_path = with_config("blas-lib","/usr/lib")
+     _libarg = LIBARG
+     LIBARG.replace "#{lib_path}/%s"
+     unless have_library(name)
+@@ -49,9 +49,9 @@ unless find_library("lapack", nil)
+     end
+     LIBARG.replace _libarg
+   end
+-  name = with_config("lapack-name","lapack_LINUX.a")
++  name = with_config("lapack-name","lapack.a")
+   unless have_library(name)
+-    lib_path = with_config("lapack-lib","/usr/local/lib")
++    lib_path = with_config("lapack-lib","/usr/lib")
+     _libarg = LIBARG
+     LIBARG.replace "#{lib_path}/%s"
+     unless have_library(name)
+@@ -61,16 +61,16 @@ unless find_library("lapack", nil)
+   end
+ end
+ 
+-sitearchdir = RbConfig::CONFIG["sitearchdir"]
+-dir_config("narray", sitearchdir, sitearchdir)
++vendorarchdir = RbConfig::CONFIG["vendorarchdir"]
++dir_config("narray", vendorarchdir, vendorarchdir)
+ gem_path = nil
+-begin
+-  require "rubygems"
+-  if (spec = Gem.source_index.find_name("narray")).any?
+-    gem_path = spec.last.full_gem_path
+-  end
+-rescue LoadError
+-end
++# begin
++#   require "rubygems"
++#   if (spec = Gem.source_index.find_name("narray")).any?
++#    gem_path = spec.last.full_gem_path
++#  end
++# rescue LoadError
++# end
+ unless find_header("narray.h",gem_path) && have_header("narray_config.h")
+   header_not_found("narray")
+ end
diff --git a/debian/patches/0002-Drop-RubyGems-Depends.patch b/debian/patches/0002-Drop-RubyGems-Depends.patch
new file mode 100644
index 0000000..e6a5e0c
--- /dev/null
+++ b/debian/patches/0002-Drop-RubyGems-Depends.patch
@@ -0,0 +1,21 @@
+From: Youhei SASAKI <uwabami at gfd-dennou.org>
+Date: Sun, 23 Mar 2014 19:36:32 +0900
+Subject: Drop RubyGems Depends
+
+Signed-off-by: Youhei SASAKI <uwabami at gfd-dennou.org>
+---
+ lib/numru/lapack.rb | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/lib/numru/lapack.rb b/lib/numru/lapack.rb
+index 252206c..ea4cfd6 100644
+--- a/lib/numru/lapack.rb
++++ b/lib/numru/lapack.rb
+@@ -1,7 +1,3 @@
+-begin
+-  require "rubygems"
+-rescue LoadError
+-end
+ require "narray"
+ require "numru/lapack.so"
+ 
diff --git a/debian/patches/0003-Fix-typo.patch b/debian/patches/0003-Fix-typo.patch
new file mode 100644
index 0000000..bc086df
--- /dev/null
+++ b/debian/patches/0003-Fix-typo.patch
@@ -0,0 +1,3204 @@
+From: Youhei SASAKI <uwabami at gfd-dennou.org>
+Date: Sun, 23 Mar 2014 21:26:58 +0900
+Subject: Fix typo.
+
+Signed-off-by: Youhei SASAKI <uwabami at gfd-dennou.org>
+---
+ dev/defs/clarrv | 84 ++++++++++++++++++++++++++++-----------------------------
+ dev/defs/clatdf | 32 +++++++++++-----------
+ dev/defs/cstegr | 62 +++++++++++++++++++++---------------------
+ dev/defs/dlamrg | 22 +++++++--------
+ dev/defs/dlarrf | 60 ++++++++++++++++++++---------------------
+ dev/defs/dlarrv | 84 ++++++++++++++++++++++++++++-----------------------------
+ dev/defs/dlatdf | 32 +++++++++++-----------
+ dev/defs/dsgesv |  2 +-
+ dev/defs/dsposv |  2 +-
+ dev/defs/dstegr | 62 +++++++++++++++++++++---------------------
+ dev/defs/slamrg | 22 +++++++--------
+ dev/defs/slarrf | 60 ++++++++++++++++++++---------------------
+ dev/defs/slarrv | 84 ++++++++++++++++++++++++++++-----------------------------
+ dev/defs/slatdf | 32 +++++++++++-----------
+ dev/defs/sstegr | 62 +++++++++++++++++++++---------------------
+ dev/defs/zcgesv |  2 +-
+ dev/defs/zcposv |  2 +-
+ dev/defs/zlarrv | 84 ++++++++++++++++++++++++++++-----------------------------
+ dev/defs/zlatdf | 32 +++++++++++-----------
+ dev/defs/zstegr | 62 +++++++++++++++++++++---------------------
+ ext/clarrv.c    | 46 +++++++++++++++----------------
+ ext/clatdf.c    | 18 ++++++-------
+ ext/cstegr.c    | 40 +++++++++++++--------------
+ ext/dlamrg.c    | 16 +++++------
+ ext/dlarrf.c    | 36 ++++++++++++-------------
+ ext/dlarrv.c    | 46 +++++++++++++++----------------
+ ext/dlatdf.c    | 18 ++++++-------
+ ext/dsgesv.c    | 16 +++++------
+ ext/dsposv.c    | 16 +++++------
+ ext/dstegr.c    | 40 +++++++++++++--------------
+ ext/slamrg.c    | 16 +++++------
+ ext/slarrf.c    | 36 ++++++++++++-------------
+ ext/slarrv.c    | 46 +++++++++++++++----------------
+ ext/slatdf.c    | 18 ++++++-------
+ ext/sstegr.c    | 40 +++++++++++++--------------
+ ext/zcgesv.c    | 16 +++++------
+ ext/zcposv.c    | 16 +++++------
+ ext/zlarrv.c    | 46 +++++++++++++++----------------
+ ext/zlatdf.c    | 18 ++++++-------
+ ext/zstegr.c    | 40 +++++++++++++--------------
+ 40 files changed, 734 insertions(+), 734 deletions(-)
+
+diff --git a/dev/defs/clarrv b/dev/defs/clarrv
+index 3c9b374..248c11f 100644
+--- a/dev/defs/clarrv
++++ b/dev/defs/clarrv
+@@ -1,111 +1,111 @@
+---- 
++---
+ :name: clarrv
+ :md5sum: 247eb83eb2fa79b6048985eb11384e6f
+ :category: :subroutine
+-:arguments: 
+-- n: 
++:arguments:
++- n:
+     :type: integer
+     :intent: input
+-- vl: 
++- vl:
+     :type: real
+     :intent: input
+-- vu: 
++- vu:
+     :type: real
+     :intent: input
+-- d: 
++- d:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- l: 
++- l:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- pivmin: 
++- pivmin:
+     :type: real
+     :intent: input
+-- isplit: 
++- isplit:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- m: 
++- m:
+     :type: integer
+     :intent: input
+-- dol: 
++- dol:
+     :type: integer
+     :intent: input
+-- dou: 
++- dou:
+     :type: integer
+     :intent: input
+-- minrgp: 
++- minrgp:
+     :type: real
+     :intent: input
+-- rtol1: 
++- rtol1:
+     :type: real
+     :intent: input
+-- rtol2: 
++- rtol2:
+     :type: real
+     :intent: input
+-- w: 
++- w:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- werr: 
++- werr:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- wgap: 
++- wgap:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- iblock: 
++- iblock:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- indexw: 
++- indexw:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- gers: 
++- gers:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - 2*n
+-- z: 
++- z:
+     :type: complex
+     :intent: output
+-    :dims: 
++    :dims:
+     - ldz
+     - MAX(1,m)
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- isuppz: 
++- isuppz:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - 2*MAX(1,m)
+-- work: 
++- work:
+     :type: real
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 12*n
+-- iwork: 
++- iwork:
+     :type: integer
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 7*n
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+-:substitutions: 
++:substitutions:
+   ldz: n
+ :fortran_help: "      SUBROUTINE CLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n\
+   *  Purpose\n\
+@@ -134,7 +134,7 @@
+   *  L       (input/output) REAL             array, dimension (N)\n\
+   *          On entry, the (N-1) subdiagonal elements of the unit\n\
+   *          bidiagonal matrix L are in elements 1 to N-1 of L\n\
+-  *          (if the matrix is not splitted.) At the end of each block\n\
++  *          (if the matrix is not split.) At the end of each block\n\
+   *          is stored the corresponding shift as given by SLARRE.\n\
+   *          On exit, L is overwritten.\n\
+   *\n\
+diff --git a/dev/defs/clatdf b/dev/defs/clatdf
+index 12168b6..e4132ef 100644
+--- a/dev/defs/clatdf
++++ b/dev/defs/clatdf
+@@ -1,43 +1,43 @@
+---- 
++---
+ :name: clatdf
+ :md5sum: 5c926a59b991b5455a3094fe676dfba8
+ :category: :subroutine
+-:arguments: 
+-- ijob: 
++:arguments:
++- ijob:
+     :type: integer
+     :intent: input
+-- n: 
++- n:
+     :type: integer
+     :intent: input
+-- z: 
++- z:
+     :type: complex
+     :intent: input
+-    :dims: 
++    :dims:
+     - ldz
+     - n
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- rhs: 
++- rhs:
+     :type: complex
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- rdsum: 
++- rdsum:
+     :type: real
+     :intent: input/output
+-- rdscal: 
++- rdscal:
+     :type: real
+     :intent: input/output
+-- ipiv: 
++- ipiv:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- jpiv: 
++- jpiv:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+ :substitutions: {}
+ 
+@@ -64,7 +64,7 @@
+   *              Zx = +-e - f with the sign giving the greater value of\n\
+   *              2-norm(x).  About 5 times as expensive as Default.\n\
+   *          IJOB .ne. 2: Local look ahead strategy where\n\
+-  *              all entries of the r.h.s. b is choosen as either +1 or\n\
++  *              all entries of the r.h.s. b is chosen as either +1 or\n\
+   *              -1.  Default.\n\
+   *\n\
+   *  N       (input) INTEGER\n\
+diff --git a/dev/defs/cstegr b/dev/defs/cstegr
+index 59c7931..b987983 100644
+--- a/dev/defs/cstegr
++++ b/dev/defs/cstegr
+@@ -1,88 +1,88 @@
+---- 
++---
+ :name: cstegr
+ :md5sum: d6dab7dc05d3eff31201f84ab530e5d5
+ :category: :subroutine
+-:arguments: 
+-- jobz: 
++:arguments:
++- jobz:
+     :type: char
+     :intent: input
+-- range: 
++- range:
+     :type: char
+     :intent: input
+-- n: 
++- n:
+     :type: integer
+     :intent: input
+-- d: 
++- d:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- e: 
++- e:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- vl: 
++- vl:
+     :type: real
+     :intent: input
+-- vu: 
++- vu:
+     :type: real
+     :intent: input
+-- il: 
++- il:
+     :type: integer
+     :intent: input
+-- iu: 
++- iu:
+     :type: integer
+     :intent: input
+-- abstol: 
++- abstol:
+     :type: real
+     :intent: input
+-- m: 
++- m:
+     :type: integer
+     :intent: output
+-- w: 
++- w:
+     :type: real
+     :intent: output
+-    :dims: 
++    :dims:
+     - n
+-- z: 
++- z:
+     :type: complex
+     :intent: output
+-    :dims: 
++    :dims:
+     - ldz
+     - MAX(1,m)
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- isuppz: 
++- isuppz:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - 2*MAX(1,m)
+-- work: 
++- work:
+     :type: real
+     :intent: output
+-    :dims: 
++    :dims:
+     - MAX(1,lwork)
+-- lwork: 
++- lwork:
+     :type: integer
+     :intent: input
+     :option: true
+     :default: "lsame_(&jobz,\"V\") ? 18*n : lsame_(&jobz,\"N\") ? 12*n : 0"
+-- iwork: 
++- iwork:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - MAX(1,liwork)
+-- liwork: 
++- liwork:
+     :type: integer
+     :intent: input
+     :option: true
+     :default: "lsame_(&jobz,\"V\") ? 10*n : lsame_(&jobz,\"N\") ? 8*n : 0"
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+-:substitutions: 
++:substitutions:
+   ldz: "lsame_(&jobz,\"V\") ? MAX(1,n) : 1"
+   m: "lsame_(&range,\"A\") ? n : lsame_(&range,\"I\") ? iu-il+1 : 0"
+ :fortran_help: "      SUBROUTINE CSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n\
+@@ -98,7 +98,7 @@
+   *  either an interval (VL,VU] or a range of indices IL:IU for the desired\n\
+   *  eigenvalues.\n\
+   *\n\
+-  *  CSTEGR is a compatability wrapper around the improved CSTEMR routine.\n\
++  *  CSTEGR is a compatibility wrapper around the improved CSTEMR routine.\n\
+   *  See SSTEMR for further details.\n\
+   *\n\
+   *  One important change is that the ABSTOL parameter no longer provides any\n\
+diff --git a/dev/defs/dlamrg b/dev/defs/dlamrg
+index f544b90..8e7dba5 100644
+--- a/dev/defs/dlamrg
++++ b/dev/defs/dlamrg
+@@ -1,29 +1,29 @@
+---- 
++---
+ :name: dlamrg
+ :md5sum: 482180fad6debeccfe564bd4a552d6d5
+ :category: :subroutine
+-:arguments: 
+-- n1: 
++:arguments:
++- n1:
+     :type: integer
+     :intent: input
+-- n2: 
++- n2:
+     :type: integer
+     :intent: input
+-- a: 
++- a:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - n1+n2
+-- dtrd1: 
++- dtrd1:
+     :type: integer
+     :intent: input
+-- dtrd2: 
++- dtrd2:
+     :type: integer
+     :intent: input
+-- index: 
++- index:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - n1+n2
+ :substitutions: {}
+ 
+@@ -40,7 +40,7 @@
+   *\n\
+   *  N1     (input) INTEGER\n\
+   *  N2     (input) INTEGER\n\
+-  *         These arguements contain the respective lengths of the two\n\
++  *         These arguments contain the respective lengths of the two\n\
+   *         sorted lists to be merged.\n\
+   *\n\
+   *  A      (input) DOUBLE PRECISION array, dimension (N1+N2)\n\
+diff --git a/dev/defs/dlarrf b/dev/defs/dlarrf
+index 810d076..0f69bbd 100644
+--- a/dev/defs/dlarrf
++++ b/dev/defs/dlarrf
+@@ -1,78 +1,78 @@
+---- 
++---
+ :name: dlarrf
+ :md5sum: df72f10d35d5993e0a6caea1cd27a6a6
+ :category: :subroutine
+-:arguments: 
+-- n: 
++:arguments:
++- n:
+     :type: integer
+     :intent: input
+-- d: 
++- d:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- l: 
++- l:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - n-1
+-- ld: 
++- ld:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - n-1
+-- clstrt: 
++- clstrt:
+     :type: integer
+     :intent: input
+-- clend: 
++- clend:
+     :type: integer
+     :intent: input
+-- w: 
++- w:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - clend-clstrt+1
+-- wgap: 
++- wgap:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - clend-clstrt+1
+-- werr: 
++- werr:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - clend-clstrt+1
+-- spdiam: 
++- spdiam:
+     :type: doublereal
+     :intent: input
+-- clgapl: 
++- clgapl:
+     :type: doublereal
+     :intent: input
+-- clgapr: 
++- clgapr:
+     :type: doublereal
+     :intent: input
+-- pivmin: 
++- pivmin:
+     :type: doublereal
+     :intent: input
+-- sigma: 
++- sigma:
+     :type: doublereal
+     :intent: output
+-- dplus: 
++- dplus:
+     :type: doublereal
+     :intent: output
+-    :dims: 
++    :dims:
+     - n
+-- lplus: 
++- lplus:
+     :type: doublereal
+     :intent: output
+-    :dims: 
++    :dims:
+     - n-1
+-- work: 
++- work:
+     :type: doublereal
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 2*n
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+ :substitutions: {}
+@@ -91,7 +91,7 @@
+   *  =========\n\
+   *\n\
+   *  N       (input) INTEGER\n\
+-  *          The order of the matrix (subblock, if the matrix splitted).\n\
++  *          The order of the matrix (subblock, if the matrix split).\n\
+   *\n\
+   *  D       (input) DOUBLE PRECISION array, dimension (N)\n\
+   *          The N diagonal elements of the diagonal matrix D.\n\
+diff --git a/dev/defs/dlarrv b/dev/defs/dlarrv
+index bb9462c..2d8b6de 100644
+--- a/dev/defs/dlarrv
++++ b/dev/defs/dlarrv
+@@ -1,111 +1,111 @@
+---- 
++---
+ :name: dlarrv
+ :md5sum: 955488910714829a06c9ad0b196024a4
+ :category: :subroutine
+-:arguments: 
+-- n: 
++:arguments:
++- n:
+     :type: integer
+     :intent: input
+-- vl: 
++- vl:
+     :type: doublereal
+     :intent: input
+-- vu: 
++- vu:
+     :type: doublereal
+     :intent: input
+-- d: 
++- d:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- l: 
++- l:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- pivmin: 
++- pivmin:
+     :type: doublereal
+     :intent: input
+-- isplit: 
++- isplit:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- m: 
++- m:
+     :type: integer
+     :intent: input
+-- dol: 
++- dol:
+     :type: integer
+     :intent: input
+-- dou: 
++- dou:
+     :type: integer
+     :intent: input
+-- minrgp: 
++- minrgp:
+     :type: doublereal
+     :intent: input
+-- rtol1: 
++- rtol1:
+     :type: doublereal
+     :intent: input
+-- rtol2: 
++- rtol2:
+     :type: doublereal
+     :intent: input
+-- w: 
++- w:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- werr: 
++- werr:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- wgap: 
++- wgap:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- iblock: 
++- iblock:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- indexw: 
++- indexw:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- gers: 
++- gers:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - 2*n
+-- z: 
++- z:
+     :type: doublereal
+     :intent: output
+-    :dims: 
++    :dims:
+     - ldz
+     - MAX(1,m)
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- isuppz: 
++- isuppz:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - 2*MAX(1,m)
+-- work: 
++- work:
+     :type: doublereal
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 12*n
+-- iwork: 
++- iwork:
+     :type: integer
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 7*n
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+-:substitutions: 
++:substitutions:
+   ldz: n
+ :fortran_help: "      SUBROUTINE DLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n\
+   *  Purpose\n\
+@@ -134,7 +134,7 @@
+   *  L       (input/output) DOUBLE PRECISION array, dimension (N)\n\
+   *          On entry, the (N-1) subdiagonal elements of the unit\n\
+   *          bidiagonal matrix L are in elements 1 to N-1 of L\n\
+-  *          (if the matrix is not splitted.) At the end of each block\n\
++  *          (if the matrix is not split.) At the end of each block\n\
+   *          is stored the corresponding shift as given by DLARRE.\n\
+   *          On exit, L is overwritten.\n\
+   *\n\
+diff --git a/dev/defs/dlatdf b/dev/defs/dlatdf
+index ecdd975..7da7e0b 100644
+--- a/dev/defs/dlatdf
++++ b/dev/defs/dlatdf
+@@ -1,43 +1,43 @@
+---- 
++---
+ :name: dlatdf
+ :md5sum: 69cfce3953f1837f451afd56bf000e43
+ :category: :subroutine
+-:arguments: 
+-- ijob: 
++:arguments:
++- ijob:
+     :type: integer
+     :intent: input
+-- n: 
++- n:
+     :type: integer
+     :intent: input
+-- z: 
++- z:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - ldz
+     - n
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- rhs: 
++- rhs:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- rdsum: 
++- rdsum:
+     :type: doublereal
+     :intent: input/output
+-- rdscal: 
++- rdscal:
+     :type: doublereal
+     :intent: input/output
+-- ipiv: 
++- ipiv:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- jpiv: 
++- jpiv:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+ :substitutions: {}
+ 
+@@ -64,7 +64,7 @@
+   *              Zx = +-e - f with the sign giving the greater value\n\
+   *              of 2-norm(x). About 5 times as expensive as Default.\n\
+   *          IJOB .ne. 2: Local look ahead strategy where all entries of\n\
+-  *              the r.h.s. b is choosen as either +1 or -1 (Default).\n\
++  *              the r.h.s. b is chosen as either +1 or -1 (Default).\n\
+   *\n\
+   *  N       (input) INTEGER\n\
+   *          The number of columns of the matrix Z.\n\
+diff --git a/dev/defs/dsgesv b/dev/defs/dsgesv
+index 124b184..376bdd5 100644
+--- a/dev/defs/dsgesv
++++ b/dev/defs/dsgesv
+@@ -155,7 +155,7 @@
+   *               -3 : failure of SGETRF\n\
+   *               -31: stop the iterative refinement after the 30th\n\
+   *                    iterations\n\
+-  *          > 0: iterative refinement has been sucessfully used.\n\
++  *          > 0: iterative refinement has been successfully used.\n\
+   *               Returns the number of iterations\n\
+   *\n\
+   *  INFO    (output) INTEGER\n\
+diff --git a/dev/defs/dsposv b/dev/defs/dsposv
+index e3abebe..6367c8e 100644
+--- a/dev/defs/dsposv
++++ b/dev/defs/dsposv
+@@ -158,7 +158,7 @@
+   *               -3 : failure of SPOTRF\n\
+   *               -31: stop the iterative refinement after the 30th\n\
+   *                    iterations\n\
+-  *          > 0: iterative refinement has been sucessfully used.\n\
++  *          > 0: iterative refinement has been successfully used.\n\
+   *               Returns the number of iterations\n\
+   *\n\
+   *  INFO    (output) INTEGER\n\
+diff --git a/dev/defs/dstegr b/dev/defs/dstegr
+index 9b76a1a..eae605c 100644
+--- a/dev/defs/dstegr
++++ b/dev/defs/dstegr
+@@ -1,88 +1,88 @@
+---- 
++---
+ :name: dstegr
+ :md5sum: 5393f044bbbc7b15c9c7280098a07f35
+ :category: :subroutine
+-:arguments: 
+-- jobz: 
++:arguments:
++- jobz:
+     :type: char
+     :intent: input
+-- range: 
++- range:
+     :type: char
+     :intent: input
+-- n: 
++- n:
+     :type: integer
+     :intent: input
+-- d: 
++- d:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- e: 
++- e:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- vl: 
++- vl:
+     :type: doublereal
+     :intent: input
+-- vu: 
++- vu:
+     :type: doublereal
+     :intent: input
+-- il: 
++- il:
+     :type: integer
+     :intent: input
+-- iu: 
++- iu:
+     :type: integer
+     :intent: input
+-- abstol: 
++- abstol:
+     :type: doublereal
+     :intent: input
+-- m: 
++- m:
+     :type: integer
+     :intent: output
+-- w: 
++- w:
+     :type: doublereal
+     :intent: output
+-    :dims: 
++    :dims:
+     - n
+-- z: 
++- z:
+     :type: doublereal
+     :intent: output
+-    :dims: 
++    :dims:
+     - ldz
+     - MAX(1,m)
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- isuppz: 
++- isuppz:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - 2*MAX(1,m)
+-- work: 
++- work:
+     :type: doublereal
+     :intent: output
+-    :dims: 
++    :dims:
+     - MAX(1,lwork)
+-- lwork: 
++- lwork:
+     :type: integer
+     :intent: input
+     :option: true
+     :default: "lsame_(&jobz,\"V\") ? 18*n : lsame_(&jobz,\"N\") ? 12*n : 0"
+-- iwork: 
++- iwork:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - MAX(1,liwork)
+-- liwork: 
++- liwork:
+     :type: integer
+     :intent: input
+     :option: true
+     :default: "lsame_(&jobz,\"V\") ? 10*n : lsame_(&jobz,\"N\") ? 8*n : 0"
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+-:substitutions: 
++:substitutions:
+   ldz: "lsame_(&jobz,\"V\") ? MAX(1,n) : 1"
+   m: "lsame_(&range,\"A\") ? n : lsame_(&range,\"I\") ? iu-il+1 : 0"
+ :fortran_help: "      SUBROUTINE DSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n\
+@@ -98,7 +98,7 @@
+   *  either an interval (VL,VU] or a range of indices IL:IU for the desired\n\
+   *  eigenvalues.\n\
+   *\n\
+-  *  DSTEGR is a compatability wrapper around the improved DSTEMR routine.\n\
++  *  DSTEGR is a compatibility wrapper around the improved DSTEMR routine.\n\
+   *  See DSTEMR for further details.\n\
+   *\n\
+   *  One important change is that the ABSTOL parameter no longer provides any\n\
+diff --git a/dev/defs/slamrg b/dev/defs/slamrg
+index 126e4f9..728a55e 100644
+--- a/dev/defs/slamrg
++++ b/dev/defs/slamrg
+@@ -1,29 +1,29 @@
+---- 
++---
+ :name: slamrg
+ :md5sum: 0a48b06c5453d8e1f06057cc7369f5f8
+ :category: :subroutine
+-:arguments: 
+-- n1: 
++:arguments:
++- n1:
+     :type: integer
+     :intent: input
+-- n2: 
++- n2:
+     :type: integer
+     :intent: input
+-- a: 
++- a:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - n1+n2
+-- strd1: 
++- strd1:
+     :type: integer
+     :intent: input
+-- strd2: 
++- strd2:
+     :type: integer
+     :intent: input
+-- index: 
++- index:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - n1+n2
+ :substitutions: {}
+ 
+@@ -40,7 +40,7 @@
+   *\n\
+   *  N1     (input) INTEGER\n\
+   *  N2     (input) INTEGER\n\
+-  *         These arguements contain the respective lengths of the two\n\
++  *         These arguments contain the respective lengths of the two\n\
+   *         sorted lists to be merged.\n\
+   *\n\
+   *  A      (input) REAL array, dimension (N1+N2)\n\
+diff --git a/dev/defs/slarrf b/dev/defs/slarrf
+index 31fbed0..08a278a 100644
+--- a/dev/defs/slarrf
++++ b/dev/defs/slarrf
+@@ -1,78 +1,78 @@
+---- 
++---
+ :name: slarrf
+ :md5sum: 04503ebe32bcc573b80d9d85b4382ab2
+ :category: :subroutine
+-:arguments: 
+-- n: 
++:arguments:
++- n:
+     :type: integer
+     :intent: input
+-- d: 
++- d:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- l: 
++- l:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - n-1
+-- ld: 
++- ld:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - n-1
+-- clstrt: 
++- clstrt:
+     :type: integer
+     :intent: input
+-- clend: 
++- clend:
+     :type: integer
+     :intent: input
+-- w: 
++- w:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - clend-clstrt+1
+-- wgap: 
++- wgap:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - clend-clstrt+1
+-- werr: 
++- werr:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - clend-clstrt+1
+-- spdiam: 
++- spdiam:
+     :type: real
+     :intent: input
+-- clgapl: 
++- clgapl:
+     :type: real
+     :intent: input
+-- clgapr: 
++- clgapr:
+     :type: real
+     :intent: input
+-- pivmin: 
++- pivmin:
+     :type: real
+     :intent: input
+-- sigma: 
++- sigma:
+     :type: real
+     :intent: output
+-- dplus: 
++- dplus:
+     :type: real
+     :intent: output
+-    :dims: 
++    :dims:
+     - n
+-- lplus: 
++- lplus:
+     :type: real
+     :intent: output
+-    :dims: 
++    :dims:
+     - n-1
+-- work: 
++- work:
+     :type: real
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 2*n
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+ :substitutions: {}
+@@ -91,7 +91,7 @@
+   *  =========\n\
+   *\n\
+   *  N       (input) INTEGER\n\
+-  *          The order of the matrix (subblock, if the matrix splitted).\n\
++  *          The order of the matrix (subblock, if the matrix split).\n\
+   *\n\
+   *  D       (input) REAL array, dimension (N)\n\
+   *          The N diagonal elements of the diagonal matrix D.\n\
+diff --git a/dev/defs/slarrv b/dev/defs/slarrv
+index 53e21fd..a844d20 100644
+--- a/dev/defs/slarrv
++++ b/dev/defs/slarrv
+@@ -1,111 +1,111 @@
+---- 
++---
+ :name: slarrv
+ :md5sum: c11cfd693c654d5325e306c9460e5b65
+ :category: :subroutine
+-:arguments: 
+-- n: 
++:arguments:
++- n:
+     :type: integer
+     :intent: input
+-- vl: 
++- vl:
+     :type: real
+     :intent: input
+-- vu: 
++- vu:
+     :type: real
+     :intent: input
+-- d: 
++- d:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- l: 
++- l:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- pivmin: 
++- pivmin:
+     :type: real
+     :intent: input
+-- isplit: 
++- isplit:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- m: 
++- m:
+     :type: integer
+     :intent: input
+-- dol: 
++- dol:
+     :type: integer
+     :intent: input
+-- dou: 
++- dou:
+     :type: integer
+     :intent: input
+-- minrgp: 
++- minrgp:
+     :type: real
+     :intent: input
+-- rtol1: 
++- rtol1:
+     :type: real
+     :intent: input
+-- rtol2: 
++- rtol2:
+     :type: real
+     :intent: input
+-- w: 
++- w:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- werr: 
++- werr:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- wgap: 
++- wgap:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- iblock: 
++- iblock:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- indexw: 
++- indexw:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- gers: 
++- gers:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - 2*n
+-- z: 
++- z:
+     :type: real
+     :intent: output
+-    :dims: 
++    :dims:
+     - ldz
+     - MAX(1,m)
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- isuppz: 
++- isuppz:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - 2*MAX(1,m)
+-- work: 
++- work:
+     :type: real
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 12*n
+-- iwork: 
++- iwork:
+     :type: integer
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 7*n
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+-:substitutions: 
++:substitutions:
+   ldz: n
+ :fortran_help: "      SUBROUTINE SLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n\
+   *  Purpose\n\
+@@ -134,7 +134,7 @@
+   *  L       (input/output) REAL array, dimension (N)\n\
+   *          On entry, the (N-1) subdiagonal elements of the unit\n\
+   *          bidiagonal matrix L are in elements 1 to N-1 of L\n\
+-  *          (if the matrix is not splitted.) At the end of each block\n\
++  *          (if the matrix is not split.) At the end of each block\n\
+   *          is stored the corresponding shift as given by SLARRE.\n\
+   *          On exit, L is overwritten.\n\
+   *\n\
+diff --git a/dev/defs/slatdf b/dev/defs/slatdf
+index 80c6aeb..cbea1fa 100644
+--- a/dev/defs/slatdf
++++ b/dev/defs/slatdf
+@@ -1,43 +1,43 @@
+---- 
++---
+ :name: slatdf
+ :md5sum: f15dc290a2df350b5b3f847a55798283
+ :category: :subroutine
+-:arguments: 
+-- ijob: 
++:arguments:
++- ijob:
+     :type: integer
+     :intent: input
+-- n: 
++- n:
+     :type: integer
+     :intent: input
+-- z: 
++- z:
+     :type: real
+     :intent: input
+-    :dims: 
++    :dims:
+     - ldz
+     - n
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- rhs: 
++- rhs:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- rdsum: 
++- rdsum:
+     :type: real
+     :intent: input/output
+-- rdscal: 
++- rdscal:
+     :type: real
+     :intent: input/output
+-- ipiv: 
++- ipiv:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- jpiv: 
++- jpiv:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+ :substitutions: {}
+ 
+@@ -64,7 +64,7 @@
+   *              Zx = +-e - f with the sign giving the greater value\n\
+   *              of 2-norm(x). About 5 times as expensive as Default.\n\
+   *          IJOB .ne. 2: Local look ahead strategy where all entries of\n\
+-  *              the r.h.s. b is choosen as either +1 or -1 (Default).\n\
++  *              the r.h.s. b is chosen as either +1 or -1 (Default).\n\
+   *\n\
+   *  N       (input) INTEGER\n\
+   *          The number of columns of the matrix Z.\n\
+diff --git a/dev/defs/sstegr b/dev/defs/sstegr
+index 8513aea..41f9915 100644
+--- a/dev/defs/sstegr
++++ b/dev/defs/sstegr
+@@ -1,88 +1,88 @@
+---- 
++---
+ :name: sstegr
+ :md5sum: 992b1604b86ed979e0de63b7c057e36b
+ :category: :subroutine
+-:arguments: 
+-- jobz: 
++:arguments:
++- jobz:
+     :type: char
+     :intent: input
+-- range: 
++- range:
+     :type: char
+     :intent: input
+-- n: 
++- n:
+     :type: integer
+     :intent: input
+-- d: 
++- d:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- e: 
++- e:
+     :type: real
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- vl: 
++- vl:
+     :type: real
+     :intent: input
+-- vu: 
++- vu:
+     :type: real
+     :intent: input
+-- il: 
++- il:
+     :type: integer
+     :intent: input
+-- iu: 
++- iu:
+     :type: integer
+     :intent: input
+-- abstol: 
++- abstol:
+     :type: real
+     :intent: input
+-- m: 
++- m:
+     :type: integer
+     :intent: output
+-- w: 
++- w:
+     :type: real
+     :intent: output
+-    :dims: 
++    :dims:
+     - n
+-- z: 
++- z:
+     :type: real
+     :intent: output
+-    :dims: 
++    :dims:
+     - ldz
+     - MAX(1,m)
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- isuppz: 
++- isuppz:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - 2*MAX(1,m)
+-- work: 
++- work:
+     :type: real
+     :intent: output
+-    :dims: 
++    :dims:
+     - MAX(1,lwork)
+-- lwork: 
++- lwork:
+     :type: integer
+     :intent: input
+     :option: true
+     :default: "lsame_(&jobz,\"V\") ? 18*n : lsame_(&jobz,\"N\") ? 12*n : 0"
+-- iwork: 
++- iwork:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - MAX(1,liwork)
+-- liwork: 
++- liwork:
+     :type: integer
+     :intent: input
+     :option: true
+     :default: "lsame_(&jobz,\"V\") ? 10*n : lsame_(&jobz,\"N\") ? 8*n : 0"
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+-:substitutions: 
++:substitutions:
+   ldz: "lsame_(&jobz,\"V\") ? MAX(1,n) : 1"
+   m: "lsame_(&range,\"A\") ? n : lsame_(&range,\"I\") ? iu-il+1 : 0"
+ :fortran_help: "      SUBROUTINE SSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n\
+@@ -98,7 +98,7 @@
+   *  either an interval (VL,VU] or a range of indices IL:IU for the desired\n\
+   *  eigenvalues.\n\
+   *\n\
+-  *  SSTEGR is a compatability wrapper around the improved SSTEMR routine.\n\
++  *  SSTEGR is a compatibility wrapper around the improved SSTEMR routine.\n\
+   *  See SSTEMR for further details.\n\
+   *\n\
+   *  One important change is that the ABSTOL parameter no longer provides any\n\
+diff --git a/dev/defs/zcgesv b/dev/defs/zcgesv
+index 64e6a7b..1442585 100644
+--- a/dev/defs/zcgesv
++++ b/dev/defs/zcgesv
+@@ -161,7 +161,7 @@
+   *               -3 : failure of CGETRF\n\
+   *               -31: stop the iterative refinement after the 30th\n\
+   *                    iterations\n\
+-  *          > 0: iterative refinement has been sucessfully used.\n\
++  *          > 0: iterative refinement has been successfully used.\n\
+   *               Returns the number of iterations\n\
+   *\n\
+   *  INFO    (output) INTEGER\n\
+diff --git a/dev/defs/zcposv b/dev/defs/zcposv
+index 874be30..cc237f6 100644
+--- a/dev/defs/zcposv
++++ b/dev/defs/zcposv
+@@ -167,7 +167,7 @@
+   *               -3 : failure of CPOTRF\n\
+   *               -31: stop the iterative refinement after the 30th\n\
+   *                    iterations\n\
+-  *          > 0: iterative refinement has been sucessfully used.\n\
++  *          > 0: iterative refinement has been successfully used.\n\
+   *               Returns the number of iterations\n\
+   *\n\
+   *  INFO    (output) INTEGER\n\
+diff --git a/dev/defs/zlarrv b/dev/defs/zlarrv
+index 2ad6967..a6b2d6c 100644
+--- a/dev/defs/zlarrv
++++ b/dev/defs/zlarrv
+@@ -1,111 +1,111 @@
+---- 
++---
+ :name: zlarrv
+ :md5sum: ae9ce24a0dd6a243053bd6396969a553
+ :category: :subroutine
+-:arguments: 
+-- n: 
++:arguments:
++- n:
+     :type: integer
+     :intent: input
+-- vl: 
++- vl:
+     :type: doublereal
+     :intent: input
+-- vu: 
++- vu:
+     :type: doublereal
+     :intent: input
+-- d: 
++- d:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- l: 
++- l:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- pivmin: 
++- pivmin:
+     :type: doublereal
+     :intent: input
+-- isplit: 
++- isplit:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- m: 
++- m:
+     :type: integer
+     :intent: input
+-- dol: 
++- dol:
+     :type: integer
+     :intent: input
+-- dou: 
++- dou:
+     :type: integer
+     :intent: input
+-- minrgp: 
++- minrgp:
+     :type: doublereal
+     :intent: input
+-- rtol1: 
++- rtol1:
+     :type: doublereal
+     :intent: input
+-- rtol2: 
++- rtol2:
+     :type: doublereal
+     :intent: input
+-- w: 
++- w:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- werr: 
++- werr:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- wgap: 
++- wgap:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- iblock: 
++- iblock:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- indexw: 
++- indexw:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- gers: 
++- gers:
+     :type: doublereal
+     :intent: input
+-    :dims: 
++    :dims:
+     - 2*n
+-- z: 
++- z:
+     :type: doublecomplex
+     :intent: output
+-    :dims: 
++    :dims:
+     - ldz
+     - MAX(1,m)
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- isuppz: 
++- isuppz:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - 2*MAX(1,m)
+-- work: 
++- work:
+     :type: doublereal
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 12*n
+-- iwork: 
++- iwork:
+     :type: integer
+     :intent: workspace
+-    :dims: 
++    :dims:
+     - 7*n
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+-:substitutions: 
++:substitutions:
+   ldz: n
+ :fortran_help: "      SUBROUTINE ZLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n\
+   *  Purpose\n\
+@@ -134,7 +134,7 @@
+   *  L       (input/output) DOUBLE PRECISION array, dimension (N)\n\
+   *          On entry, the (N-1) subdiagonal elements of the unit\n\
+   *          bidiagonal matrix L are in elements 1 to N-1 of L\n\
+-  *          (if the matrix is not splitted.) At the end of each block\n\
++  *          (if the matrix is not split.) At the end of each block\n\
+   *          is stored the corresponding shift as given by DLARRE.\n\
+   *          On exit, L is overwritten.\n\
+   *\n\
+diff --git a/dev/defs/zlatdf b/dev/defs/zlatdf
+index 2683ca7..8cade80 100644
+--- a/dev/defs/zlatdf
++++ b/dev/defs/zlatdf
+@@ -1,43 +1,43 @@
+---- 
++---
+ :name: zlatdf
+ :md5sum: a3e258a309f756a498efa03aacc75a5a
+ :category: :subroutine
+-:arguments: 
+-- ijob: 
++:arguments:
++- ijob:
+     :type: integer
+     :intent: input
+-- n: 
++- n:
+     :type: integer
+     :intent: input
+-- z: 
++- z:
+     :type: doublecomplex
+     :intent: input
+-    :dims: 
++    :dims:
+     - ldz
+     - n
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- rhs: 
++- rhs:
+     :type: doublecomplex
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- rdsum: 
++- rdsum:
+     :type: doublereal
+     :intent: input/output
+-- rdscal: 
++- rdscal:
+     :type: doublereal
+     :intent: input/output
+-- ipiv: 
++- ipiv:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+-- jpiv: 
++- jpiv:
+     :type: integer
+     :intent: input
+-    :dims: 
++    :dims:
+     - n
+ :substitutions: {}
+ 
+@@ -64,7 +64,7 @@
+   *              Zx = +-e - f with the sign giving the greater value of\n\
+   *              2-norm(x).  About 5 times as expensive as Default.\n\
+   *          IJOB .ne. 2: Local look ahead strategy where\n\
+-  *              all entries of the r.h.s. b is choosen as either +1 or\n\
++  *              all entries of the r.h.s. b is chosen as either +1 or\n\
+   *              -1.  Default.\n\
+   *\n\
+   *  N       (input) INTEGER\n\
+diff --git a/dev/defs/zstegr b/dev/defs/zstegr
+index 8cf0a7a..74c983d 100644
+--- a/dev/defs/zstegr
++++ b/dev/defs/zstegr
+@@ -1,88 +1,88 @@
+---- 
++---
+ :name: zstegr
+ :md5sum: 49832177055455b53b056123ac827dbc
+ :category: :subroutine
+-:arguments: 
+-- jobz: 
++:arguments:
++- jobz:
+     :type: char
+     :intent: input
+-- range: 
++- range:
+     :type: char
+     :intent: input
+-- n: 
++- n:
+     :type: integer
+     :intent: input
+-- d: 
++- d:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- e: 
++- e:
+     :type: doublereal
+     :intent: input/output
+-    :dims: 
++    :dims:
+     - n
+-- vl: 
++- vl:
+     :type: doublereal
+     :intent: input
+-- vu: 
++- vu:
+     :type: doublereal
+     :intent: input
+-- il: 
++- il:
+     :type: integer
+     :intent: input
+-- iu: 
++- iu:
+     :type: integer
+     :intent: input
+-- abstol: 
++- abstol:
+     :type: doublereal
+     :intent: input
+-- m: 
++- m:
+     :type: integer
+     :intent: output
+-- w: 
++- w:
+     :type: doublereal
+     :intent: output
+-    :dims: 
++    :dims:
+     - n
+-- z: 
++- z:
+     :type: doublecomplex
+     :intent: output
+-    :dims: 
++    :dims:
+     - ldz
+     - MAX(1,m)
+-- ldz: 
++- ldz:
+     :type: integer
+     :intent: input
+-- isuppz: 
++- isuppz:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - 2*MAX(1,m)
+-- work: 
++- work:
+     :type: doublereal
+     :intent: output
+-    :dims: 
++    :dims:
+     - MAX(1,lwork)
+-- lwork: 
++- lwork:
+     :type: integer
+     :intent: input
+     :option: true
+     :default: "lsame_(&jobz,\"V\") ? 18*n : lsame_(&jobz,\"N\") ? 12*n : 0"
+-- iwork: 
++- iwork:
+     :type: integer
+     :intent: output
+-    :dims: 
++    :dims:
+     - MAX(1,liwork)
+-- liwork: 
++- liwork:
+     :type: integer
+     :intent: input
+     :option: true
+     :default: "lsame_(&jobz,\"V\") ? 10*n : lsame_(&jobz,\"N\") ? 8*n : 0"
+-- info: 
++- info:
+     :type: integer
+     :intent: output
+-:substitutions: 
++:substitutions:
+   ldz: "lsame_(&jobz,\"V\") ? MAX(1,n) : 1"
+   m: "lsame_(&range,\"A\") ? n : lsame_(&range,\"I\") ? iu-il+1 : 0"
+ :fortran_help: "      SUBROUTINE ZSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n\
+@@ -98,7 +98,7 @@
+   *  either an interval (VL,VU] or a range of indices IL:IU for the desired\n\
+   *  eigenvalues.\n\
+   *\n\
+-  *  ZSTEGR is a compatability wrapper around the improved ZSTEMR routine.\n\
++  *  ZSTEGR is a compatibility wrapper around the improved ZSTEMR routine.\n\
+   *  See DSTEMR for further details.\n\
+   *\n\
+   *  One important change is that the ABSTOL parameter no longer provides any\n\
+diff --git a/ext/clarrv.c b/ext/clarrv.c
+index 27a999e..14fb250 100644
+--- a/ext/clarrv.c
++++ b/ext/clarrv.c
+@@ -6,47 +6,47 @@ extern VOID clarrv_(integer* n, real* vl, real* vu, real* d, real* l, real* pivm
+ static VALUE
+ rblapack_clarrv(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_vl;
+-  real vl; 
++  real vl;
+   VALUE rblapack_vu;
+-  real vu; 
++  real vu;
+   VALUE rblapack_d;
+-  real *d; 
++  real *d;
+   VALUE rblapack_l;
+-  real *l; 
++  real *l;
+   VALUE rblapack_pivmin;
+-  real pivmin; 
++  real pivmin;
+   VALUE rblapack_isplit;
+-  integer *isplit; 
++  integer *isplit;
+   VALUE rblapack_m;
+-  integer m; 
++  integer m;
+   VALUE rblapack_dol;
+-  integer dol; 
++  integer dol;
+   VALUE rblapack_dou;
+-  integer dou; 
++  integer dou;
+   VALUE rblapack_minrgp;
+-  real minrgp; 
++  real minrgp;
+   VALUE rblapack_rtol1;
+-  real rtol1; 
++  real rtol1;
+   VALUE rblapack_rtol2;
+-  real rtol2; 
++  real rtol2;
+   VALUE rblapack_w;
+-  real *w; 
++  real *w;
+   VALUE rblapack_werr;
+-  real *werr; 
++  real *werr;
+   VALUE rblapack_wgap;
+-  real *wgap; 
++  real *wgap;
+   VALUE rblapack_iblock;
+-  integer *iblock; 
++  integer *iblock;
+   VALUE rblapack_indexw;
+-  integer *indexw; 
++  integer *indexw;
+   VALUE rblapack_gers;
+-  real *gers; 
++  real *gers;
+   VALUE rblapack_z;
+-  complex *z; 
++  complex *z;
+   VALUE rblapack_isuppz;
+-  integer *isuppz; 
++  integer *isuppz;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_d_out__;
+   real *d_out__;
+   VALUE rblapack_l_out__;
+@@ -68,13 +68,13 @@ rblapack_clarrv(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.clarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE CLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  CLARRV computes the eigenvectors of the tr [...]
++      printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.clarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE CLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  CLARRV computes the eigenvectors of the tr [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.clarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 18 && argc != 18)
+diff --git a/ext/clatdf.c b/ext/clatdf.c
+index caeac23..29f8b65 100644
+--- a/ext/clatdf.c
++++ b/ext/clatdf.c
+@@ -6,19 +6,19 @@ extern VOID clatdf_(integer* ijob, integer* n, complex* z, integer* ldz, complex
+ static VALUE
+ rblapack_clatdf(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_ijob;
+-  integer ijob; 
++  integer ijob;
+   VALUE rblapack_z;
+-  complex *z; 
++  complex *z;
+   VALUE rblapack_rhs;
+-  complex *rhs; 
++  complex *rhs;
+   VALUE rblapack_rdsum;
+-  real rdsum; 
++  real rdsum;
+   VALUE rblapack_rdscal;
+-  real rdscal; 
++  real rdscal;
+   VALUE rblapack_ipiv;
+-  integer *ipiv; 
++  integer *ipiv;
+   VALUE rblapack_jpiv;
+-  integer *jpiv; 
++  integer *jpiv;
+   VALUE rblapack_rhs_out__;
+   complex *rhs_out__;
+ 
+@@ -30,13 +30,13 @@ rblapack_clatdf(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.clatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE CLATDF( IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV )\n\n*  Purpose\n*  =======\n*\n*  CLATDF computes the contribution to the reciprocal Dif-estimate\n*  by solving for x in Z * x = b, where b is chosen such that the norm\n*  of x is as large as possible. It is assumed that LU decomposition\n*  of [...]
++      printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.clatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE CLATDF( IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV )\n\n*  Purpose\n*  =======\n*\n*  CLATDF computes the contribution to the reciprocal Dif-estimate\n*  by solving for x in Z * x = b, where b is chosen such that the norm\n*  of x is as large as possible. It is assumed that LU decomposition\n*  of [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.clatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 7 && argc != 7)
+diff --git a/ext/cstegr.c b/ext/cstegr.c
+index 69426a9..0b221c3 100644
+--- a/ext/cstegr.c
++++ b/ext/cstegr.c
+@@ -6,41 +6,41 @@ extern VOID cstegr_(char* jobz, char* range, integer* n, real* d, real* e, real*
+ static VALUE
+ rblapack_cstegr(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_jobz;
+-  char jobz; 
++  char jobz;
+   VALUE rblapack_range;
+-  char range; 
++  char range;
+   VALUE rblapack_d;
+-  real *d; 
++  real *d;
+   VALUE rblapack_e;
+-  real *e; 
++  real *e;
+   VALUE rblapack_vl;
+-  real vl; 
++  real vl;
+   VALUE rblapack_vu;
+-  real vu; 
++  real vu;
+   VALUE rblapack_il;
+-  integer il; 
++  integer il;
+   VALUE rblapack_iu;
+-  integer iu; 
++  integer iu;
+   VALUE rblapack_abstol;
+-  real abstol; 
++  real abstol;
+   VALUE rblapack_lwork;
+-  integer lwork; 
++  integer lwork;
+   VALUE rblapack_liwork;
+-  integer liwork; 
++  integer liwork;
+   VALUE rblapack_m;
+-  integer m; 
++  integer m;
+   VALUE rblapack_w;
+-  real *w; 
++  real *w;
+   VALUE rblapack_z;
+-  complex *z; 
++  complex *z;
+   VALUE rblapack_isuppz;
+-  integer *isuppz; 
++  integer *isuppz;
+   VALUE rblapack_work;
+-  real *work; 
++  real *work;
+   VALUE rblapack_iwork;
+-  integer *iwork; 
++  integer *iwork;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_d_out__;
+   real *d_out__;
+   VALUE rblapack_e_out__;
+@@ -54,13 +54,13 @@ rblapack_cstegr(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.cstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE CSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  CSTEGR computes selected eigenvalues and, optionally, eigenvectors\n*  of a real symmetric tridiago [...]
++      printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.cstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE CSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  CSTEGR computes selected eigenvalues and, optionally, eigenvectors\n*  of a real symmetric tridiago [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.cstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 9 && argc != 11)
+diff --git a/ext/dlamrg.c b/ext/dlamrg.c
+index 55ccd71..b0689c1 100644
+--- a/ext/dlamrg.c
++++ b/ext/dlamrg.c
+@@ -6,17 +6,17 @@ extern VOID dlamrg_(integer* n1, integer* n2, doublereal* a, integer* dtrd1, int
+ static VALUE
+ rblapack_dlamrg(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_n1;
+-  integer n1; 
++  integer n1;
+   VALUE rblapack_n2;
+-  integer n2; 
++  integer n2;
+   VALUE rblapack_a;
+-  doublereal *a; 
++  doublereal *a;
+   VALUE rblapack_dtrd1;
+-  integer dtrd1; 
++  integer dtrd1;
+   VALUE rblapack_dtrd2;
+-  integer dtrd2; 
++  integer dtrd2;
+   VALUE rblapack_index;
+-  integer *index; 
++  integer *index;
+ 
+ 
+   VALUE rblapack_options;
+@@ -24,13 +24,13 @@ rblapack_dlamrg(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  index = NumRu::Lapack.dlamrg( n1, n2, a, dtrd1, dtrd2, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DLAMRG( N1, N2, A, DTRD1, DTRD2, INDEX )\n\n*  Purpose\n*  =======\n*\n*  DLAMRG will create a permutation list which will merge the elements\n*  of A (which is composed of two independently sorted sets) into a\n*  single set which is sorted in ascending order.\n*\n\n*  Arguments\n*  =========\n*\n*  N1     (input) INTEGER\n*  N2  [...]
++      printf("%s\n", "USAGE:\n  index = NumRu::Lapack.dlamrg( n1, n2, a, dtrd1, dtrd2, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DLAMRG( N1, N2, A, DTRD1, DTRD2, INDEX )\n\n*  Purpose\n*  =======\n*\n*  DLAMRG will create a permutation list which will merge the elements\n*  of A (which is composed of two independently sorted sets) into a\n*  single set which is sorted in ascending order.\n*\n\n*  Arguments\n*  =========\n*\n*  N1     (input) INTEGER\n*  N2  [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  index = NumRu::Lapack.dlamrg( n1, n2, a, dtrd1, dtrd2, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 5 && argc != 5)
+diff --git a/ext/dlarrf.c b/ext/dlarrf.c
+index b01fad6..926887c 100644
+--- a/ext/dlarrf.c
++++ b/ext/dlarrf.c
+@@ -6,37 +6,37 @@ extern VOID dlarrf_(integer* n, doublereal* d, doublereal* l, doublereal* ld, in
+ static VALUE
+ rblapack_dlarrf(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_d;
+-  doublereal *d; 
++  doublereal *d;
+   VALUE rblapack_l;
+-  doublereal *l; 
++  doublereal *l;
+   VALUE rblapack_ld;
+-  doublereal *ld; 
++  doublereal *ld;
+   VALUE rblapack_clstrt;
+-  integer clstrt; 
++  integer clstrt;
+   VALUE rblapack_clend;
+-  integer clend; 
++  integer clend;
+   VALUE rblapack_w;
+-  doublereal *w; 
++  doublereal *w;
+   VALUE rblapack_wgap;
+-  doublereal *wgap; 
++  doublereal *wgap;
+   VALUE rblapack_werr;
+-  doublereal *werr; 
++  doublereal *werr;
+   VALUE rblapack_spdiam;
+-  doublereal spdiam; 
++  doublereal spdiam;
+   VALUE rblapack_clgapl;
+-  doublereal clgapl; 
++  doublereal clgapl;
+   VALUE rblapack_clgapr;
+-  doublereal clgapr; 
++  doublereal clgapr;
+   VALUE rblapack_pivmin;
+-  doublereal pivmin; 
++  doublereal pivmin;
+   VALUE rblapack_sigma;
+-  doublereal sigma; 
++  doublereal sigma;
+   VALUE rblapack_dplus;
+-  doublereal *dplus; 
++  doublereal *dplus;
+   VALUE rblapack_lplus;
+-  doublereal *lplus; 
++  doublereal *lplus;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_wgap_out__;
+   doublereal *wgap_out__;
+   doublereal *work;
+@@ -48,13 +48,13 @@ rblapack_dlarrf(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  sigma, dplus, lplus, info, wgap = NumRu::Lapack.dlarrf( d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DLARRF( N, D, L, LD, CLSTRT, CLEND, W, WGAP, WERR, SPDIAM, CLGAPL, CLGAPR, PIVMIN, SIGMA, DPLUS, LPLUS, WORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  Given the initial representation L D L^T and its cluster of close\n*  eigenvalues (in a relative measure), W( [...]
++      printf("%s\n", "USAGE:\n  sigma, dplus, lplus, info, wgap = NumRu::Lapack.dlarrf( d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DLARRF( N, D, L, LD, CLSTRT, CLEND, W, WGAP, WERR, SPDIAM, CLGAPL, CLGAPR, PIVMIN, SIGMA, DPLUS, LPLUS, WORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  Given the initial representation L D L^T and its cluster of close\n*  eigenvalues (in a relative measure), W( [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  sigma, dplus, lplus, info, wgap = NumRu::Lapack.dlarrf( d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 12 && argc != 12)
+diff --git a/ext/dlarrv.c b/ext/dlarrv.c
+index 501fb91..bdbcd45 100644
+--- a/ext/dlarrv.c
++++ b/ext/dlarrv.c
+@@ -6,47 +6,47 @@ extern VOID dlarrv_(integer* n, doublereal* vl, doublereal* vu, doublereal* d, d
+ static VALUE
+ rblapack_dlarrv(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_vl;
+-  doublereal vl; 
++  doublereal vl;
+   VALUE rblapack_vu;
+-  doublereal vu; 
++  doublereal vu;
+   VALUE rblapack_d;
+-  doublereal *d; 
++  doublereal *d;
+   VALUE rblapack_l;
+-  doublereal *l; 
++  doublereal *l;
+   VALUE rblapack_pivmin;
+-  doublereal pivmin; 
++  doublereal pivmin;
+   VALUE rblapack_isplit;
+-  integer *isplit; 
++  integer *isplit;
+   VALUE rblapack_m;
+-  integer m; 
++  integer m;
+   VALUE rblapack_dol;
+-  integer dol; 
++  integer dol;
+   VALUE rblapack_dou;
+-  integer dou; 
++  integer dou;
+   VALUE rblapack_minrgp;
+-  doublereal minrgp; 
++  doublereal minrgp;
+   VALUE rblapack_rtol1;
+-  doublereal rtol1; 
++  doublereal rtol1;
+   VALUE rblapack_rtol2;
+-  doublereal rtol2; 
++  doublereal rtol2;
+   VALUE rblapack_w;
+-  doublereal *w; 
++  doublereal *w;
+   VALUE rblapack_werr;
+-  doublereal *werr; 
++  doublereal *werr;
+   VALUE rblapack_wgap;
+-  doublereal *wgap; 
++  doublereal *wgap;
+   VALUE rblapack_iblock;
+-  integer *iblock; 
++  integer *iblock;
+   VALUE rblapack_indexw;
+-  integer *indexw; 
++  integer *indexw;
+   VALUE rblapack_gers;
+-  doublereal *gers; 
++  doublereal *gers;
+   VALUE rblapack_z;
+-  doublereal *z; 
++  doublereal *z;
+   VALUE rblapack_isuppz;
+-  integer *isuppz; 
++  integer *isuppz;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_d_out__;
+   doublereal *d_out__;
+   VALUE rblapack_l_out__;
+@@ -68,13 +68,13 @@ rblapack_dlarrv(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.dlarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  DLARRV computes the eigenvectors of the tr [...]
++      printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.dlarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  DLARRV computes the eigenvectors of the tr [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.dlarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 18 && argc != 18)
+diff --git a/ext/dlatdf.c b/ext/dlatdf.c
+index 5bd827a..ec1a00a 100644
+--- a/ext/dlatdf.c
++++ b/ext/dlatdf.c
+@@ -6,19 +6,19 @@ extern VOID dlatdf_(integer* ijob, integer* n, doublereal* z, integer* ldz, doub
+ static VALUE
+ rblapack_dlatdf(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_ijob;
+-  integer ijob; 
++  integer ijob;
+   VALUE rblapack_z;
+-  doublereal *z; 
++  doublereal *z;
+   VALUE rblapack_rhs;
+-  doublereal *rhs; 
++  doublereal *rhs;
+   VALUE rblapack_rdsum;
+-  doublereal rdsum; 
++  doublereal rdsum;
+   VALUE rblapack_rdscal;
+-  doublereal rdscal; 
++  doublereal rdscal;
+   VALUE rblapack_ipiv;
+-  integer *ipiv; 
++  integer *ipiv;
+   VALUE rblapack_jpiv;
+-  integer *jpiv; 
++  integer *jpiv;
+   VALUE rblapack_rhs_out__;
+   doublereal *rhs_out__;
+ 
+@@ -30,13 +30,13 @@ rblapack_dlatdf(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.dlatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DLATDF( IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV )\n\n*  Purpose\n*  =======\n*\n*  DLATDF uses the LU factorization of the n-by-n matrix Z computed by\n*  DGETC2 and computes a contribution to the reciprocal Dif-estimate\n*  by solving Z * x = b for x, and choosing the r.h.s. b such that\n*  th [...]
++      printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.dlatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DLATDF( IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV )\n\n*  Purpose\n*  =======\n*\n*  DLATDF uses the LU factorization of the n-by-n matrix Z computed by\n*  DGETC2 and computes a contribution to the reciprocal Dif-estimate\n*  by solving Z * x = b for x, and choosing the r.h.s. b such that\n*  th [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.dlatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 7 && argc != 7)
+diff --git a/ext/dsgesv.c b/ext/dsgesv.c
+index 450b220..0d5abcc 100644
+--- a/ext/dsgesv.c
++++ b/ext/dsgesv.c
+@@ -6,17 +6,17 @@ extern VOID dsgesv_(integer* n, integer* nrhs, doublereal* a, integer* lda, inte
+ static VALUE
+ rblapack_dsgesv(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_a;
+-  doublereal *a; 
++  doublereal *a;
+   VALUE rblapack_b;
+-  doublereal *b; 
++  doublereal *b;
+   VALUE rblapack_ipiv;
+-  integer *ipiv; 
++  integer *ipiv;
+   VALUE rblapack_x;
+-  doublereal *x; 
++  doublereal *x;
+   VALUE rblapack_iter;
+-  integer iter; 
++  integer iter;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_a_out__;
+   doublereal *a_out__;
+   doublereal *work;
+@@ -33,13 +33,13 @@ rblapack_dsgesv(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  ipiv, x, iter, info, a = NumRu::Lapack.dsgesv( a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DSGESV( N, NRHS, A, LDA, IPIV, B, LDB, X, LDX, WORK, SWORK, ITER, INFO )\n\n*  Purpose\n*  =======\n*\n*  DSGESV computes the solution to a real system of linear equations\n*     A * X = B,\n*  where A is an N-by-N matrix and X and B are N-by-NRHS matrices.\n*\n*  DSGESV first attempts to factorize the matrix in SINGLE PRECISION\n*  [...]
++      printf("%s\n", "USAGE:\n  ipiv, x, iter, info, a = NumRu::Lapack.dsgesv( a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DSGESV( N, NRHS, A, LDA, IPIV, B, LDB, X, LDX, WORK, SWORK, ITER, INFO )\n\n*  Purpose\n*  =======\n*\n*  DSGESV computes the solution to a real system of linear equations\n*     A * X = B,\n*  where A is an N-by-N matrix and X and B are N-by-NRHS matrices.\n*\n*  DSGESV first attempts to factorize the matrix in SINGLE PRECISION\n*  [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  ipiv, x, iter, info, a = NumRu::Lapack.dsgesv( a, b, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 2 && argc != 2)
+diff --git a/ext/dsposv.c b/ext/dsposv.c
+index c2c75b1..22fbefc 100644
+--- a/ext/dsposv.c
++++ b/ext/dsposv.c
+@@ -6,17 +6,17 @@ extern VOID dsposv_(char* uplo, integer* n, integer* nrhs, doublereal* a, intege
+ static VALUE
+ rblapack_dsposv(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_uplo;
+-  char uplo; 
++  char uplo;
+   VALUE rblapack_a;
+-  doublereal *a; 
++  doublereal *a;
+   VALUE rblapack_b;
+-  doublereal *b; 
++  doublereal *b;
+   VALUE rblapack_x;
+-  doublereal *x; 
++  doublereal *x;
+   VALUE rblapack_iter;
+-  integer iter; 
++  integer iter;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_a_out__;
+   doublereal *a_out__;
+   doublereal *work;
+@@ -33,13 +33,13 @@ rblapack_dsposv(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  x, iter, info, a = NumRu::Lapack.dsposv( uplo, a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DSPOSV( UPLO, N, NRHS, A, LDA, B, LDB, X, LDX, WORK, SWORK, ITER, INFO )\n\n*  Purpose\n*  =======\n*\n*  DSPOSV computes the solution to a real system of linear equations\n*     A * X = B,\n*  where A is an N-by-N symmetric positive definite matrix and X and B\n*  are N-by-NRHS matrices.\n*\n*  DSPOSV first attempts to factorize th [...]
++      printf("%s\n", "USAGE:\n  x, iter, info, a = NumRu::Lapack.dsposv( uplo, a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DSPOSV( UPLO, N, NRHS, A, LDA, B, LDB, X, LDX, WORK, SWORK, ITER, INFO )\n\n*  Purpose\n*  =======\n*\n*  DSPOSV computes the solution to a real system of linear equations\n*     A * X = B,\n*  where A is an N-by-N symmetric positive definite matrix and X and B\n*  are N-by-NRHS matrices.\n*\n*  DSPOSV first attempts to factorize th [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  x, iter, info, a = NumRu::Lapack.dsposv( uplo, a, b, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 3 && argc != 3)
+diff --git a/ext/dstegr.c b/ext/dstegr.c
+index 087dee3..e8eaa99 100644
+--- a/ext/dstegr.c
++++ b/ext/dstegr.c
+@@ -6,41 +6,41 @@ extern VOID dstegr_(char* jobz, char* range, integer* n, doublereal* d, doublere
+ static VALUE
+ rblapack_dstegr(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_jobz;
+-  char jobz; 
++  char jobz;
+   VALUE rblapack_range;
+-  char range; 
++  char range;
+   VALUE rblapack_d;
+-  doublereal *d; 
++  doublereal *d;
+   VALUE rblapack_e;
+-  doublereal *e; 
++  doublereal *e;
+   VALUE rblapack_vl;
+-  doublereal vl; 
++  doublereal vl;
+   VALUE rblapack_vu;
+-  doublereal vu; 
++  doublereal vu;
+   VALUE rblapack_il;
+-  integer il; 
++  integer il;
+   VALUE rblapack_iu;
+-  integer iu; 
++  integer iu;
+   VALUE rblapack_abstol;
+-  doublereal abstol; 
++  doublereal abstol;
+   VALUE rblapack_lwork;
+-  integer lwork; 
++  integer lwork;
+   VALUE rblapack_liwork;
+-  integer liwork; 
++  integer liwork;
+   VALUE rblapack_m;
+-  integer m; 
++  integer m;
+   VALUE rblapack_w;
+-  doublereal *w; 
++  doublereal *w;
+   VALUE rblapack_z;
+-  doublereal *z; 
++  doublereal *z;
+   VALUE rblapack_isuppz;
+-  integer *isuppz; 
++  integer *isuppz;
+   VALUE rblapack_work;
+-  doublereal *work; 
++  doublereal *work;
+   VALUE rblapack_iwork;
+-  integer *iwork; 
++  integer *iwork;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_d_out__;
+   doublereal *d_out__;
+   VALUE rblapack_e_out__;
+@@ -54,13 +54,13 @@ rblapack_dstegr(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.dstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  DSTEGR computes selected eigenvalues and, optionally, eigenvectors\n*  of a real symmetric tridiago [...]
++      printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.dstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE DSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  DSTEGR computes selected eigenvalues and, optionally, eigenvectors\n*  of a real symmetric tridiago [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.dstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 9 && argc != 11)
+diff --git a/ext/slamrg.c b/ext/slamrg.c
+index ec64618..59af57a 100644
+--- a/ext/slamrg.c
++++ b/ext/slamrg.c
+@@ -6,17 +6,17 @@ extern VOID slamrg_(integer* n1, integer* n2, real* a, integer* strd1, integer*
+ static VALUE
+ rblapack_slamrg(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_n1;
+-  integer n1; 
++  integer n1;
+   VALUE rblapack_n2;
+-  integer n2; 
++  integer n2;
+   VALUE rblapack_a;
+-  real *a; 
++  real *a;
+   VALUE rblapack_strd1;
+-  integer strd1; 
++  integer strd1;
+   VALUE rblapack_strd2;
+-  integer strd2; 
++  integer strd2;
+   VALUE rblapack_index;
+-  integer *index; 
++  integer *index;
+ 
+ 
+   VALUE rblapack_options;
+@@ -24,13 +24,13 @@ rblapack_slamrg(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  index = NumRu::Lapack.slamrg( n1, n2, a, strd1, strd2, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SLAMRG( N1, N2, A, STRD1, STRD2, INDEX )\n\n*  Purpose\n*  =======\n*\n*  SLAMRG will create a permutation list which will merge the elements\n*  of A (which is composed of two independently sorted sets) into a\n*  single set which is sorted in ascending order.\n*\n\n*  Arguments\n*  =========\n*\n*  N1     (input) INTEGER\n*  N2  [...]
++      printf("%s\n", "USAGE:\n  index = NumRu::Lapack.slamrg( n1, n2, a, strd1, strd2, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SLAMRG( N1, N2, A, STRD1, STRD2, INDEX )\n\n*  Purpose\n*  =======\n*\n*  SLAMRG will create a permutation list which will merge the elements\n*  of A (which is composed of two independently sorted sets) into a\n*  single set which is sorted in ascending order.\n*\n\n*  Arguments\n*  =========\n*\n*  N1     (input) INTEGER\n*  N2  [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  index = NumRu::Lapack.slamrg( n1, n2, a, strd1, strd2, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 5 && argc != 5)
+diff --git a/ext/slarrf.c b/ext/slarrf.c
+index 4b7f3e9..82721e3 100644
+--- a/ext/slarrf.c
++++ b/ext/slarrf.c
+@@ -6,37 +6,37 @@ extern VOID slarrf_(integer* n, real* d, real* l, real* ld, integer* clstrt, int
+ static VALUE
+ rblapack_slarrf(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_d;
+-  real *d; 
++  real *d;
+   VALUE rblapack_l;
+-  real *l; 
++  real *l;
+   VALUE rblapack_ld;
+-  real *ld; 
++  real *ld;
+   VALUE rblapack_clstrt;
+-  integer clstrt; 
++  integer clstrt;
+   VALUE rblapack_clend;
+-  integer clend; 
++  integer clend;
+   VALUE rblapack_w;
+-  real *w; 
++  real *w;
+   VALUE rblapack_wgap;
+-  real *wgap; 
++  real *wgap;
+   VALUE rblapack_werr;
+-  real *werr; 
++  real *werr;
+   VALUE rblapack_spdiam;
+-  real spdiam; 
++  real spdiam;
+   VALUE rblapack_clgapl;
+-  real clgapl; 
++  real clgapl;
+   VALUE rblapack_clgapr;
+-  real clgapr; 
++  real clgapr;
+   VALUE rblapack_pivmin;
+-  real pivmin; 
++  real pivmin;
+   VALUE rblapack_sigma;
+-  real sigma; 
++  real sigma;
+   VALUE rblapack_dplus;
+-  real *dplus; 
++  real *dplus;
+   VALUE rblapack_lplus;
+-  real *lplus; 
++  real *lplus;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_wgap_out__;
+   real *wgap_out__;
+   real *work;
+@@ -48,13 +48,13 @@ rblapack_slarrf(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  sigma, dplus, lplus, info, wgap = NumRu::Lapack.slarrf( d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SLARRF( N, D, L, LD, CLSTRT, CLEND, W, WGAP, WERR, SPDIAM, CLGAPL, CLGAPR, PIVMIN, SIGMA, DPLUS, LPLUS, WORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  Given the initial representation L D L^T and its cluster of close\n*  eigenvalues (in a relative measure), W( [...]
++      printf("%s\n", "USAGE:\n  sigma, dplus, lplus, info, wgap = NumRu::Lapack.slarrf( d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SLARRF( N, D, L, LD, CLSTRT, CLEND, W, WGAP, WERR, SPDIAM, CLGAPL, CLGAPR, PIVMIN, SIGMA, DPLUS, LPLUS, WORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  Given the initial representation L D L^T and its cluster of close\n*  eigenvalues (in a relative measure), W( [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  sigma, dplus, lplus, info, wgap = NumRu::Lapack.slarrf( d, l, ld, clstrt, clend, w, wgap, werr, spdiam, clgapl, clgapr, pivmin, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 12 && argc != 12)
+diff --git a/ext/slarrv.c b/ext/slarrv.c
+index cf1e9d3..aff351d 100644
+--- a/ext/slarrv.c
++++ b/ext/slarrv.c
+@@ -6,47 +6,47 @@ extern VOID slarrv_(integer* n, real* vl, real* vu, real* d, real* l, real* pivm
+ static VALUE
+ rblapack_slarrv(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_vl;
+-  real vl; 
++  real vl;
+   VALUE rblapack_vu;
+-  real vu; 
++  real vu;
+   VALUE rblapack_d;
+-  real *d; 
++  real *d;
+   VALUE rblapack_l;
+-  real *l; 
++  real *l;
+   VALUE rblapack_pivmin;
+-  real pivmin; 
++  real pivmin;
+   VALUE rblapack_isplit;
+-  integer *isplit; 
++  integer *isplit;
+   VALUE rblapack_m;
+-  integer m; 
++  integer m;
+   VALUE rblapack_dol;
+-  integer dol; 
++  integer dol;
+   VALUE rblapack_dou;
+-  integer dou; 
++  integer dou;
+   VALUE rblapack_minrgp;
+-  real minrgp; 
++  real minrgp;
+   VALUE rblapack_rtol1;
+-  real rtol1; 
++  real rtol1;
+   VALUE rblapack_rtol2;
+-  real rtol2; 
++  real rtol2;
+   VALUE rblapack_w;
+-  real *w; 
++  real *w;
+   VALUE rblapack_werr;
+-  real *werr; 
++  real *werr;
+   VALUE rblapack_wgap;
+-  real *wgap; 
++  real *wgap;
+   VALUE rblapack_iblock;
+-  integer *iblock; 
++  integer *iblock;
+   VALUE rblapack_indexw;
+-  integer *indexw; 
++  integer *indexw;
+   VALUE rblapack_gers;
+-  real *gers; 
++  real *gers;
+   VALUE rblapack_z;
+-  real *z; 
++  real *z;
+   VALUE rblapack_isuppz;
+-  integer *isuppz; 
++  integer *isuppz;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_d_out__;
+   real *d_out__;
+   VALUE rblapack_l_out__;
+@@ -68,13 +68,13 @@ rblapack_slarrv(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.slarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  SLARRV computes the eigenvectors of the tr [...]
++      printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.slarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  SLARRV computes the eigenvectors of the tr [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.slarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 18 && argc != 18)
+diff --git a/ext/slatdf.c b/ext/slatdf.c
+index cea67ee..8757564 100644
+--- a/ext/slatdf.c
++++ b/ext/slatdf.c
+@@ -6,19 +6,19 @@ extern VOID slatdf_(integer* ijob, integer* n, real* z, integer* ldz, real* rhs,
+ static VALUE
+ rblapack_slatdf(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_ijob;
+-  integer ijob; 
++  integer ijob;
+   VALUE rblapack_z;
+-  real *z; 
++  real *z;
+   VALUE rblapack_rhs;
+-  real *rhs; 
++  real *rhs;
+   VALUE rblapack_rdsum;
+-  real rdsum; 
++  real rdsum;
+   VALUE rblapack_rdscal;
+-  real rdscal; 
++  real rdscal;
+   VALUE rblapack_ipiv;
+-  integer *ipiv; 
++  integer *ipiv;
+   VALUE rblapack_jpiv;
+-  integer *jpiv; 
++  integer *jpiv;
+   VALUE rblapack_rhs_out__;
+   real *rhs_out__;
+ 
+@@ -30,13 +30,13 @@ rblapack_slatdf(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.slatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SLATDF( IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV )\n\n*  Purpose\n*  =======\n*\n*  SLATDF uses the LU factorization of the n-by-n matrix Z computed by\n*  SGETC2 and computes a contribution to the reciprocal Dif-estimate\n*  by solving Z * x = b for x, and choosing the r.h.s. b such that\n*  th [...]
++      printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.slatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SLATDF( IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV )\n\n*  Purpose\n*  =======\n*\n*  SLATDF uses the LU factorization of the n-by-n matrix Z computed by\n*  SGETC2 and computes a contribution to the reciprocal Dif-estimate\n*  by solving Z * x = b for x, and choosing the r.h.s. b such that\n*  th [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.slatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 7 && argc != 7)
+diff --git a/ext/sstegr.c b/ext/sstegr.c
+index dc19e76..0f79c80 100644
+--- a/ext/sstegr.c
++++ b/ext/sstegr.c
+@@ -6,41 +6,41 @@ extern VOID sstegr_(char* jobz, char* range, integer* n, real* d, real* e, real*
+ static VALUE
+ rblapack_sstegr(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_jobz;
+-  char jobz; 
++  char jobz;
+   VALUE rblapack_range;
+-  char range; 
++  char range;
+   VALUE rblapack_d;
+-  real *d; 
++  real *d;
+   VALUE rblapack_e;
+-  real *e; 
++  real *e;
+   VALUE rblapack_vl;
+-  real vl; 
++  real vl;
+   VALUE rblapack_vu;
+-  real vu; 
++  real vu;
+   VALUE rblapack_il;
+-  integer il; 
++  integer il;
+   VALUE rblapack_iu;
+-  integer iu; 
++  integer iu;
+   VALUE rblapack_abstol;
+-  real abstol; 
++  real abstol;
+   VALUE rblapack_lwork;
+-  integer lwork; 
++  integer lwork;
+   VALUE rblapack_liwork;
+-  integer liwork; 
++  integer liwork;
+   VALUE rblapack_m;
+-  integer m; 
++  integer m;
+   VALUE rblapack_w;
+-  real *w; 
++  real *w;
+   VALUE rblapack_z;
+-  real *z; 
++  real *z;
+   VALUE rblapack_isuppz;
+-  integer *isuppz; 
++  integer *isuppz;
+   VALUE rblapack_work;
+-  real *work; 
++  real *work;
+   VALUE rblapack_iwork;
+-  integer *iwork; 
++  integer *iwork;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_d_out__;
+   real *d_out__;
+   VALUE rblapack_e_out__;
+@@ -54,13 +54,13 @@ rblapack_sstegr(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.sstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  SSTEGR computes selected eigenvalues and, optionally, eigenvectors\n*  of a real symmetric tridiago [...]
++      printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.sstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE SSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  SSTEGR computes selected eigenvalues and, optionally, eigenvectors\n*  of a real symmetric tridiago [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.sstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 9 && argc != 11)
+diff --git a/ext/zcgesv.c b/ext/zcgesv.c
+index 0886a80..83189e7 100644
+--- a/ext/zcgesv.c
++++ b/ext/zcgesv.c
+@@ -6,17 +6,17 @@ extern VOID zcgesv_(integer* n, integer* nrhs, doublecomplex* a, integer* lda, i
+ static VALUE
+ rblapack_zcgesv(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_a;
+-  doublecomplex *a; 
++  doublecomplex *a;
+   VALUE rblapack_b;
+-  doublecomplex *b; 
++  doublecomplex *b;
+   VALUE rblapack_ipiv;
+-  integer *ipiv; 
++  integer *ipiv;
+   VALUE rblapack_x;
+-  doublecomplex *x; 
++  doublecomplex *x;
+   VALUE rblapack_iter;
+-  integer iter; 
++  integer iter;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_a_out__;
+   doublecomplex *a_out__;
+   doublecomplex *work;
+@@ -34,13 +34,13 @@ rblapack_zcgesv(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  ipiv, x, iter, info, a = NumRu::Lapack.zcgesv( a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZCGESV( N, NRHS, A, LDA, IPIV, B, LDB, X, LDX, WORK, SWORK, RWORK, ITER, INFO )\n\n*  Purpose\n*  =======\n*\n*  ZCGESV computes the solution to a complex system of linear equations\n*     A * X = B,\n*  where A is an N-by-N matrix and X and B are N-by-NRHS matrices.\n*\n*  ZCGESV first attempts to factorize the matrix in COMPLEX an [...]
++      printf("%s\n", "USAGE:\n  ipiv, x, iter, info, a = NumRu::Lapack.zcgesv( a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZCGESV( N, NRHS, A, LDA, IPIV, B, LDB, X, LDX, WORK, SWORK, RWORK, ITER, INFO )\n\n*  Purpose\n*  =======\n*\n*  ZCGESV computes the solution to a complex system of linear equations\n*     A * X = B,\n*  where A is an N-by-N matrix and X and B are N-by-NRHS matrices.\n*\n*  ZCGESV first attempts to factorize the matrix in COMPLEX an [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  ipiv, x, iter, info, a = NumRu::Lapack.zcgesv( a, b, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 2 && argc != 2)
+diff --git a/ext/zcposv.c b/ext/zcposv.c
+index dcfa853..381cf65 100644
+--- a/ext/zcposv.c
++++ b/ext/zcposv.c
+@@ -6,17 +6,17 @@ extern VOID zcposv_(char* uplo, integer* n, integer* nrhs, doublecomplex* a, int
+ static VALUE
+ rblapack_zcposv(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_uplo;
+-  char uplo; 
++  char uplo;
+   VALUE rblapack_a;
+-  doublecomplex *a; 
++  doublecomplex *a;
+   VALUE rblapack_b;
+-  doublecomplex *b; 
++  doublecomplex *b;
+   VALUE rblapack_x;
+-  doublecomplex *x; 
++  doublecomplex *x;
+   VALUE rblapack_iter;
+-  integer iter; 
++  integer iter;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_a_out__;
+   doublecomplex *a_out__;
+   doublecomplex *work;
+@@ -34,13 +34,13 @@ rblapack_zcposv(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  x, iter, info, a = NumRu::Lapack.zcposv( uplo, a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZCPOSV( UPLO, N, NRHS, A, LDA, B, LDB, X, LDX, WORK, SWORK, RWORK, ITER, INFO )\n\n*  Purpose\n*  =======\n*\n*  ZCPOSV computes the solution to a complex system of linear equations\n*     A * X = B,\n*  where A is an N-by-N Hermitian positive definite matrix and X and B\n*  are N-by-NRHS matrices.\n*\n*  ZCPOSV first attempts to fa [...]
++      printf("%s\n", "USAGE:\n  x, iter, info, a = NumRu::Lapack.zcposv( uplo, a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZCPOSV( UPLO, N, NRHS, A, LDA, B, LDB, X, LDX, WORK, SWORK, RWORK, ITER, INFO )\n\n*  Purpose\n*  =======\n*\n*  ZCPOSV computes the solution to a complex system of linear equations\n*     A * X = B,\n*  where A is an N-by-N Hermitian positive definite matrix and X and B\n*  are N-by-NRHS matrices.\n*\n*  ZCPOSV first attempts to fa [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  x, iter, info, a = NumRu::Lapack.zcposv( uplo, a, b, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 3 && argc != 3)
+diff --git a/ext/zlarrv.c b/ext/zlarrv.c
+index 34ec952..112a405 100644
+--- a/ext/zlarrv.c
++++ b/ext/zlarrv.c
+@@ -6,47 +6,47 @@ extern VOID zlarrv_(integer* n, doublereal* vl, doublereal* vu, doublereal* d, d
+ static VALUE
+ rblapack_zlarrv(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_vl;
+-  doublereal vl; 
++  doublereal vl;
+   VALUE rblapack_vu;
+-  doublereal vu; 
++  doublereal vu;
+   VALUE rblapack_d;
+-  doublereal *d; 
++  doublereal *d;
+   VALUE rblapack_l;
+-  doublereal *l; 
++  doublereal *l;
+   VALUE rblapack_pivmin;
+-  doublereal pivmin; 
++  doublereal pivmin;
+   VALUE rblapack_isplit;
+-  integer *isplit; 
++  integer *isplit;
+   VALUE rblapack_m;
+-  integer m; 
++  integer m;
+   VALUE rblapack_dol;
+-  integer dol; 
++  integer dol;
+   VALUE rblapack_dou;
+-  integer dou; 
++  integer dou;
+   VALUE rblapack_minrgp;
+-  doublereal minrgp; 
++  doublereal minrgp;
+   VALUE rblapack_rtol1;
+-  doublereal rtol1; 
++  doublereal rtol1;
+   VALUE rblapack_rtol2;
+-  doublereal rtol2; 
++  doublereal rtol2;
+   VALUE rblapack_w;
+-  doublereal *w; 
++  doublereal *w;
+   VALUE rblapack_werr;
+-  doublereal *werr; 
++  doublereal *werr;
+   VALUE rblapack_wgap;
+-  doublereal *wgap; 
++  doublereal *wgap;
+   VALUE rblapack_iblock;
+-  integer *iblock; 
++  integer *iblock;
+   VALUE rblapack_indexw;
+-  integer *indexw; 
++  integer *indexw;
+   VALUE rblapack_gers;
+-  doublereal *gers; 
++  doublereal *gers;
+   VALUE rblapack_z;
+-  doublecomplex *z; 
++  doublecomplex *z;
+   VALUE rblapack_isuppz;
+-  integer *isuppz; 
++  integer *isuppz;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_d_out__;
+   doublereal *d_out__;
+   VALUE rblapack_l_out__;
+@@ -68,13 +68,13 @@ rblapack_zlarrv(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.zlarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  ZLARRV computes the eigenvectors of the tr [...]
++      printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.zlarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZLARRV( N, VL, VU, D, L, PIVMIN, ISPLIT, M, DOL, DOU, MINRGP, RTOL1, RTOL2, W, WERR, WGAP, IBLOCK, INDEXW, GERS, Z, LDZ, ISUPPZ, WORK, IWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  ZLARRV computes the eigenvectors of the tr [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  z, isuppz, info, d, l, w, werr, wgap = NumRu::Lapack.zlarrv( vl, vu, d, l, pivmin, isplit, m, dol, dou, minrgp, rtol1, rtol2, w, werr, wgap, iblock, indexw, gers, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 18 && argc != 18)
+diff --git a/ext/zlatdf.c b/ext/zlatdf.c
+index 4cbfc23..1fd7116 100644
+--- a/ext/zlatdf.c
++++ b/ext/zlatdf.c
+@@ -6,19 +6,19 @@ extern VOID zlatdf_(integer* ijob, integer* n, doublecomplex* z, integer* ldz, d
+ static VALUE
+ rblapack_zlatdf(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_ijob;
+-  integer ijob; 
++  integer ijob;
+   VALUE rblapack_z;
+-  doublecomplex *z; 
++  doublecomplex *z;
+   VALUE rblapack_rhs;
+-  doublecomplex *rhs; 
++  doublecomplex *rhs;
+   VALUE rblapack_rdsum;
+-  doublereal rdsum; 
++  doublereal rdsum;
+   VALUE rblapack_rdscal;
+-  doublereal rdscal; 
++  doublereal rdscal;
+   VALUE rblapack_ipiv;
+-  integer *ipiv; 
++  integer *ipiv;
+   VALUE rblapack_jpiv;
+-  integer *jpiv; 
++  integer *jpiv;
+   VALUE rblapack_rhs_out__;
+   doublecomplex *rhs_out__;
+ 
+@@ -30,13 +30,13 @@ rblapack_zlatdf(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.zlatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZLATDF( IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV )\n\n*  Purpose\n*  =======\n*\n*  ZLATDF computes the contribution to the reciprocal Dif-estimate\n*  by solving for x in Z * x = b, where b is chosen such that the norm\n*  of x is as large as possible. It is assumed that LU decomposition\n*  of [...]
++      printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.zlatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZLATDF( IJOB, N, Z, LDZ, RHS, RDSUM, RDSCAL, IPIV, JPIV )\n\n*  Purpose\n*  =======\n*\n*  ZLATDF computes the contribution to the reciprocal Dif-estimate\n*  by solving for x in Z * x = b, where b is chosen such that the norm\n*  of x is as large as possible. It is assumed that LU decomposition\n*  of [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  rhs, rdsum, rdscal = NumRu::Lapack.zlatdf( ijob, z, rhs, rdsum, rdscal, ipiv, jpiv, [:usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 7 && argc != 7)
+diff --git a/ext/zstegr.c b/ext/zstegr.c
+index a015f74..dbf5e88 100644
+--- a/ext/zstegr.c
++++ b/ext/zstegr.c
+@@ -6,41 +6,41 @@ extern VOID zstegr_(char* jobz, char* range, integer* n, doublereal* d, doublere
+ static VALUE
+ rblapack_zstegr(int argc, VALUE *argv, VALUE self){
+   VALUE rblapack_jobz;
+-  char jobz; 
++  char jobz;
+   VALUE rblapack_range;
+-  char range; 
++  char range;
+   VALUE rblapack_d;
+-  doublereal *d; 
++  doublereal *d;
+   VALUE rblapack_e;
+-  doublereal *e; 
++  doublereal *e;
+   VALUE rblapack_vl;
+-  doublereal vl; 
++  doublereal vl;
+   VALUE rblapack_vu;
+-  doublereal vu; 
++  doublereal vu;
+   VALUE rblapack_il;
+-  integer il; 
++  integer il;
+   VALUE rblapack_iu;
+-  integer iu; 
++  integer iu;
+   VALUE rblapack_abstol;
+-  doublereal abstol; 
++  doublereal abstol;
+   VALUE rblapack_lwork;
+-  integer lwork; 
++  integer lwork;
+   VALUE rblapack_liwork;
+-  integer liwork; 
++  integer liwork;
+   VALUE rblapack_m;
+-  integer m; 
++  integer m;
+   VALUE rblapack_w;
+-  doublereal *w; 
++  doublereal *w;
+   VALUE rblapack_z;
+-  doublecomplex *z; 
++  doublecomplex *z;
+   VALUE rblapack_isuppz;
+-  integer *isuppz; 
++  integer *isuppz;
+   VALUE rblapack_work;
+-  doublereal *work; 
++  doublereal *work;
+   VALUE rblapack_iwork;
+-  integer *iwork; 
++  integer *iwork;
+   VALUE rblapack_info;
+-  integer info; 
++  integer info;
+   VALUE rblapack_d_out__;
+   doublereal *d_out__;
+   VALUE rblapack_e_out__;
+@@ -54,13 +54,13 @@ rblapack_zstegr(int argc, VALUE *argv, VALUE self){
+     argc--;
+     rblapack_options = argv[argc];
+     if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
+-      printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.zstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  ZSTEGR computes selected eigenvalues and, optionally, eigenvectors\n*  of a real symmetric tridiago [...]
++      printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.zstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n      SUBROUTINE ZSTEGR( JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO )\n\n*  Purpose\n*  =======\n*\n*  ZSTEGR computes selected eigenvalues and, optionally, eigenvectors\n*  of a real symmetric tridiago [...]
+       return Qnil;
+     }
+     if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
+       printf("%s\n", "USAGE:\n  m, w, z, isuppz, work, iwork, info, d, e = NumRu::Lapack.zstegr( jobz, range, d, e, vl, vu, il, iu, abstol, [:lwork => lwork, :liwork => liwork, :usage => usage, :help => help])\n");
+       return Qnil;
+-    } 
++    }
+   } else
+     rblapack_options = Qnil;
+   if (argc != 9 && argc != 11)
diff --git a/debian/patches/FixLibraryPath b/debian/patches/FixLibraryPath
deleted file mode 100644
index 53f801c..0000000
--- a/debian/patches/FixLibraryPath
+++ /dev/null
@@ -1,44 +0,0 @@
-Description: Fix library search path: archdir -> vendorarchdir
-Author: Youhei SASAKI <uwabami at gfd-dennou.org>
-
---- ruby-lapack.orig/ext/extconf.rb
-+++ ruby-lapack/ext/extconf.rb
-@@ -41,7 +41,7 @@
- 
-   name = with_config("blas-name","blas_LINUX.a")
-   unless have_library(name)
--    lib_path = with_config("blas-lib","/usr/local/lib")
-+    lib_path = with_config("blas-lib","/usr/lib")
-     _libarg = LIBARG
-     LIBARG.replace "#{lib_path}/%s"
-     unless have_library(name)
-@@ -51,7 +51,7 @@
-   end
-   name = with_config("lapack-name","lapack_LINUX.a")
-   unless have_library(name)
--    lib_path = with_config("lapack-lib","/usr/local/lib")
-+    lib_path = with_config("lapack-lib","/usr/lib")
-     _libarg = LIBARG
-     LIBARG.replace "#{lib_path}/%s"
-     unless have_library(name)
-@@ -61,17 +61,9 @@
-   end
- end
- 
--sitearchdir = Config::CONFIG["sitearchdir"]
--dir_config("narray", sitearchdir, sitearchdir)
--gem_path = nil
--begin
--  require "rubygems"
--  if (spec = Gem.source_index.find_name("narray")).any?
--    gem_path = spec.last.full_gem_path
--  end
--rescue LoadError
--end
--unless find_header("narray.h",gem_path) && have_header("narray_config.h")
-+archdir = Config::CONFIG["vendorarchdir"]
-+dir_config("narray", archdir, archdir)
-+unless find_header("narray.h", archdir) && have_header("narray_config.h")
-   header_not_found("narray")
- end
- 
diff --git a/debian/patches/series b/debian/patches/series
index bb000e5..28d7873 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,3 @@
-FixLibraryPath
+0001-Fix-Library-PATH.patch
+0002-Drop-RubyGems-Depends.patch
+0003-Fix-typo.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/ruby-lapack.git



More information about the Pkg-ruby-extras-commits mailing list