summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/superlu_mt/files/superlu_mt-3.1-duplicate-symbols.patch')
-rw-r--r--sci-libs/superlu_mt/files/superlu_mt-3.1-duplicate-symbols.patch240
1 files changed, 240 insertions, 0 deletions
diff --git a/sci-libs/superlu_mt/files/superlu_mt-3.1-duplicate-symbols.patch b/sci-libs/superlu_mt/files/superlu_mt-3.1-duplicate-symbols.patch
new file mode 100644
index 00000000000..cc82c2692b5
--- /dev/null
+++ b/sci-libs/superlu_mt/files/superlu_mt-3.1-duplicate-symbols.patch
@@ -0,0 +1,240 @@
+--- a/SRC/smatgen.c 2016-12-28 01:06:35.529467943 +0000
++++ b/SRC/smatgen.c 2016-12-28 01:06:06.949710330 +0000
+@@ -102,77 +102,3 @@
+
+ xa[n] = lasta;
+ }
+-
+-double dlaran_(int *iseed)
+-{
+-/* -- LAPACK auxiliary routine (version 2.0) --
+- Univ. of Tennessee, Univ. of California Berkeley, NAG Ltd.,
+- Courant Institute, Argonne National Lab, and Rice University
+- February 29, 1992
+-
+- Purpose
+- =======
+-
+- DLARAN returns a random real number from a uniform (0,1)
+- distribution.
+-
+- Arguments
+- =========
+-
+- ISEED (input/output) INT array, dimension (4)
+- On entry, the seed of the random number generator; the array
+-
+- elements must be between 0 and 4095, and ISEED(4) must be
+- odd.
+- On exit, the seed is updated.
+-
+- Further Details
+- ===============
+-
+- This routine uses a multiplicative congruential method with modulus
+- 2**48 and multiplier 33952834046453 (see G.S.Fishman,
+- 'Multiplicative congruential random number generators with modulus
+- 2**b: an exhaustive analysis for b = 32 and a partial analysis for
+- b = 48', Math. Comp. 189, pp 331-344, 1990).
+-
+- 48-bit integers are stored in 4 integer array elements with 12 bits
+- per element. Hence the routine is portable across machines with
+- integers of 32 bits or more.
+-
+- =====================================================================
+-*/
+-
+- /* Local variables */
+- int it1, it2, it3, it4;
+-
+- --iseed;
+-
+- /* multiply the seed by the multiplier modulo 2**48 */
+- it4 = iseed[4] * 2549;
+- it3 = it4 / 4096;
+- it4 -= it3 << 12;
+- it3 = it3 + iseed[3] * 2549 + iseed[4] * 2508;
+- it2 = it3 / 4096;
+- it3 -= it2 << 12;
+- it2 = it2 + iseed[2] * 2549 + iseed[3] * 2508 + iseed[4] * 322;
+- it1 = it2 / 4096;
+- it2 -= it1 << 12;
+- it1 = it1 + iseed[1] * 2549 + iseed[2] * 2508 + iseed[3] * 322 + iseed[4]
+- * 494;
+- it1 %= 4096;
+-
+- /* return updated seed */
+-
+- iseed[1] = it1;
+- iseed[2] = it2;
+- iseed[3] = it3;
+- iseed[4] = it4;
+-
+- /* convert 48-bit integer to a real number in the interval (0,1) */
+-
+- return ((double) it1 +
+- ((double) it2 + ((double) it3 + (double) it4 * 2.44140625e-4) *
+- 2.44140625e-4) * 2.44140625e-4) * 2.44140625e-4;
+-
+-} /* dlaran_ */
+-
+--- a/SRC/zmatgen.c 2016-12-28 01:07:05.819211056 +0000
++++ b/SRC/zmatgen.c 2016-12-28 01:07:26.329037112 +0000
+@@ -102,77 +102,3 @@
+
+ xa[n] = lasta;
+ }
+-
+-double dlaran_(int *iseed)
+-{
+-/* -- LAPACK auxiliary routine (version 2.0) --
+- Univ. of Tennessee, Univ. of California Berkeley, NAG Ltd.,
+- Courant Institute, Argonne National Lab, and Rice University
+- February 29, 1992
+-
+- Purpose
+- =======
+-
+- DLARAN returns a random real number from a uniform (0,1)
+- distribution.
+-
+- Arguments
+- =========
+-
+- ISEED (input/output) INT array, dimension (4)
+- On entry, the seed of the random number generator; the array
+-
+- elements must be between 0 and 4095, and ISEED(4) must be
+- odd.
+- On exit, the seed is updated.
+-
+- Further Details
+- ===============
+-
+- This routine uses a multiplicative congruential method with modulus
+- 2**48 and multiplier 33952834046453 (see G.S.Fishman,
+- 'Multiplicative congruential random number generators with modulus
+- 2**b: an exhaustive analysis for b = 32 and a partial analysis for
+- b = 48', Math. Comp. 189, pp 331-344, 1990).
+-
+- 48-bit integers are stored in 4 integer array elements with 12 bits
+- per element. Hence the routine is portable across machines with
+- integers of 32 bits or more.
+-
+- =====================================================================
+-*/
+-
+- /* Local variables */
+- int it1, it2, it3, it4;
+-
+- --iseed;
+-
+- /* multiply the seed by the multiplier modulo 2**48 */
+- it4 = iseed[4] * 2549;
+- it3 = it4 / 4096;
+- it4 -= it3 << 12;
+- it3 = it3 + iseed[3] * 2549 + iseed[4] * 2508;
+- it2 = it3 / 4096;
+- it3 -= it2 << 12;
+- it2 = it2 + iseed[2] * 2549 + iseed[3] * 2508 + iseed[4] * 322;
+- it1 = it2 / 4096;
+- it2 -= it1 << 12;
+- it1 = it1 + iseed[1] * 2549 + iseed[2] * 2508 + iseed[3] * 322 + iseed[4]
+- * 494;
+- it1 %= 4096;
+-
+- /* return updated seed */
+-
+- iseed[1] = it1;
+- iseed[2] = it2;
+- iseed[3] = it3;
+- iseed[4] = it4;
+-
+- /* convert 48-bit integer to a real number in the interval (0,1) */
+-
+- return ((double) it1 +
+- ((double) it2 + ((double) it3 + (double) it4 * 2.44140625e-4) *
+- 2.44140625e-4) * 2.44140625e-4) * 2.44140625e-4;
+-
+-} /* dlaran_ */
+-
+--- a/SRC/cmatgen.c 2016-12-28 00:57:45.513963020 +0000
++++ b/SRC/cmatgen.c 2016-12-28 00:58:46.413446529 +0000
+@@ -102,77 +102,3 @@
+
+ xa[n] = lasta;
+ }
+-
+-double dlaran_(int *iseed)
+-{
+-/* -- LAPACK auxiliary routine (version 2.0) --
+- Univ. of Tennessee, Univ. of California Berkeley, NAG Ltd.,
+- Courant Institute, Argonne National Lab, and Rice University
+- February 29, 1992
+-
+- Purpose
+- =======
+-
+- DLARAN returns a random real number from a uniform (0,1)
+- distribution.
+-
+- Arguments
+- =========
+-
+- ISEED (input/output) INT array, dimension (4)
+- On entry, the seed of the random number generator; the array
+-
+- elements must be between 0 and 4095, and ISEED(4) must be
+- odd.
+- On exit, the seed is updated.
+-
+- Further Details
+- ===============
+-
+- This routine uses a multiplicative congruential method with modulus
+- 2**48 and multiplier 33952834046453 (see G.S.Fishman,
+- 'Multiplicative congruential random number generators with modulus
+- 2**b: an exhaustive analysis for b = 32 and a partial analysis for
+- b = 48', Math. Comp. 189, pp 331-344, 1990).
+-
+- 48-bit integers are stored in 4 integer array elements with 12 bits
+- per element. Hence the routine is portable across machines with
+- integers of 32 bits or more.
+-
+- =====================================================================
+-*/
+-
+- /* Local variables */
+- int it1, it2, it3, it4;
+-
+- --iseed;
+-
+- /* multiply the seed by the multiplier modulo 2**48 */
+- it4 = iseed[4] * 2549;
+- it3 = it4 / 4096;
+- it4 -= it3 << 12;
+- it3 = it3 + iseed[3] * 2549 + iseed[4] * 2508;
+- it2 = it3 / 4096;
+- it3 -= it2 << 12;
+- it2 = it2 + iseed[2] * 2549 + iseed[3] * 2508 + iseed[4] * 322;
+- it1 = it2 / 4096;
+- it2 -= it1 << 12;
+- it1 = it1 + iseed[1] * 2549 + iseed[2] * 2508 + iseed[3] * 322 + iseed[4]
+- * 494;
+- it1 %= 4096;
+-
+- /* return updated seed */
+-
+- iseed[1] = it1;
+- iseed[2] = it2;
+- iseed[3] = it3;
+- iseed[4] = it4;
+-
+- /* convert 48-bit integer to a real number in the interval (0,1) */
+-
+- return ((double) it1 +
+- ((double) it2 + ((double) it3 + (double) it4 * 2.44140625e-4) *
+- 2.44140625e-4) * 2.44140625e-4) * 2.44140625e-4;
+-
+-} /* dlaran_ */
+-