From 111a8a40b8e81cd865771b912fef4a0d4e583c88 Mon Sep 17 00:00:00 2001 From: Ivana Varekova Date: Wed, 18 Jun 2008 06:46:44 +0000 Subject: [PATCH] - Resolves: #451006 programs build with gcc 4.3 based on gsl require -fgnu89-inline --- gsl-1.11-gcc43.patch | 1384 ++++++++++++++++++++++++++++++++++++++++++ gsl.spec | 8 +- 2 files changed, 1391 insertions(+), 1 deletion(-) create mode 100644 gsl-1.11-gcc43.patch diff --git a/gsl-1.11-gcc43.patch b/gsl-1.11-gcc43.patch new file mode 100644 index 0000000..979e66d --- /dev/null +++ b/gsl-1.11-gcc43.patch @@ -0,0 +1,1384 @@ +diff -up gsl-1.12/combination/gsl_combination.h.pom gsl-1.12/combination/gsl_combination.h +--- gsl-1.12/combination/gsl_combination.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/combination/gsl_combination.h 2008-06-17 10:40:53.000000000 -0400 +@@ -71,7 +71,7 @@ int gsl_combination_prev (gsl_combinatio + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + size_t + gsl_combination_get (const gsl_combination * c, const size_t i) + { +diff -up gsl-1.12/complex/gsl_complex_math.h.pom gsl-1.12/complex/gsl_complex_math.h +--- gsl-1.12/complex/gsl_complex_math.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/complex/gsl_complex_math.h 2008-06-17 10:40:53.000000000 -0400 +@@ -39,7 +39,7 @@ gsl_complex gsl_complex_rect (double x, + gsl_complex gsl_complex_polar (double r, double theta); /* r= r e^(i theta) */ + + #ifdef HAVE_INLINE +-extern inline gsl_complex ++extern inline __attribute__((__gnu_inline__)) gsl_complex + gsl_complex_rect (double x, double y) + { /* return z = x + i y */ + gsl_complex z; +diff -up gsl-1.12/gsl_math.h.pom gsl-1.12/gsl_math.h +--- gsl-1.12/gsl_math.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/gsl_math.h 2008-06-17 10:40:53.000000000 -0400 +@@ -129,44 +129,44 @@ double gsl_min (double a, double b); + /* inline-friendly strongly typed versions */ + #ifdef HAVE_INLINE + +-extern inline int GSL_MAX_INT (int a, int b); +-extern inline int GSL_MIN_INT (int a, int b); +-extern inline double GSL_MAX_DBL (double a, double b); +-extern inline double GSL_MIN_DBL (double a, double b); +-extern inline long double GSL_MAX_LDBL (long double a, long double b); +-extern inline long double GSL_MIN_LDBL (long double a, long double b); ++extern inline __attribute__((__gnu_inline__)) int GSL_MAX_INT (int a, int b); ++extern inline __attribute__((__gnu_inline__)) int GSL_MIN_INT (int a, int b); ++extern inline __attribute__((__gnu_inline__)) double GSL_MAX_DBL (double a, double b); ++extern inline __attribute__((__gnu_inline__)) double GSL_MIN_DBL (double a, double b); ++extern inline __attribute__((__gnu_inline__)) long double GSL_MAX_LDBL (long double a, long double b); ++extern inline __attribute__((__gnu_inline__)) long double GSL_MIN_LDBL (long double a, long double b); + +-extern inline int ++extern inline __attribute__((__gnu_inline__)) int + GSL_MAX_INT (int a, int b) + { + return GSL_MAX (a, b); + } + +-extern inline int ++extern inline __attribute__((__gnu_inline__)) int + GSL_MIN_INT (int a, int b) + { + return GSL_MIN (a, b); + } + +-extern inline double ++extern inline __attribute__((__gnu_inline__)) double + GSL_MAX_DBL (double a, double b) + { + return GSL_MAX (a, b); + } + +-extern inline double ++extern inline __attribute__((__gnu_inline__)) double + GSL_MIN_DBL (double a, double b) + { + return GSL_MIN (a, b); + } + +-extern inline long double ++extern inline __attribute__((__gnu_inline__)) long double + GSL_MAX_LDBL (long double a, long double b) + { + return GSL_MAX (a, b); + } + +-extern inline long double ++extern inline __attribute__((__gnu_inline__)) long double + GSL_MIN_LDBL (long double a, long double b) + { + return GSL_MIN (a, b); +diff -up gsl-1.12/gsl_mode.h.pom gsl-1.12/gsl_mode.h +--- gsl-1.12/gsl_mode.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/gsl_mode.h 2008-06-17 10:40:53.000000000 -0400 +@@ -67,9 +67,9 @@ typedef unsigned int gsl_mode_t; + #define GSL_PREC_APPROX 2 + + #ifdef HAVE_INLINE +-extern inline unsigned int GSL_MODE_PREC(gsl_mode_t mt); ++extern inline __attribute__((__gnu_inline__)) unsigned int GSL_MODE_PREC(gsl_mode_t mt); + +-extern inline unsigned int ++extern inline __attribute__((__gnu_inline__)) unsigned int + GSL_MODE_PREC(gsl_mode_t mt) + { return (mt & (unsigned int)7); } + #else /* HAVE_INLINE */ +diff -up gsl-1.12/gsl_pow_int.h.pom gsl-1.12/gsl_pow_int.h +--- gsl-1.12/gsl_pow_int.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/gsl_pow_int.h 2008-06-17 10:40:53.000000000 -0400 +@@ -33,23 +33,23 @@ + __BEGIN_DECLS + + #ifdef HAVE_INLINE +-extern inline double gsl_pow_2(const double x); +-extern inline double gsl_pow_3(const double x); +-extern inline double gsl_pow_4(const double x); +-extern inline double gsl_pow_5(const double x); +-extern inline double gsl_pow_6(const double x); +-extern inline double gsl_pow_7(const double x); +-extern inline double gsl_pow_8(const double x); +-extern inline double gsl_pow_9(const double x); ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_2(const double x); ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_3(const double x); ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_4(const double x); ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_5(const double x); ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_6(const double x); ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_7(const double x); ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_8(const double x); ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_9(const double x); + +-extern inline double gsl_pow_2(const double x) { return x*x; } +-extern inline double gsl_pow_3(const double x) { return x*x*x; } +-extern inline double gsl_pow_4(const double x) { double x2 = x*x; return x2*x2; } +-extern inline double gsl_pow_5(const double x) { double x2 = x*x; return x2*x2*x; } +-extern inline double gsl_pow_6(const double x) { double x2 = x*x; return x2*x2*x2; } +-extern inline double gsl_pow_7(const double x) { double x3 = x*x*x; return x3*x3*x; } +-extern inline double gsl_pow_8(const double x) { double x2 = x*x; double x4 = x2*x2; return x4*x4; } +-extern inline double gsl_pow_9(const double x) { double x3 = x*x*x; return x3*x3*x3; } ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_2(const double x) { return x*x; } ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_3(const double x) { return x*x*x; } ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_4(const double x) { double x2 = x*x; return x2*x2; } ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_5(const double x) { double x2 = x*x; return x2*x2*x; } ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_6(const double x) { double x2 = x*x; return x2*x2*x2; } ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_7(const double x) { double x3 = x*x*x; return x3*x3*x; } ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_8(const double x) { double x2 = x*x; double x4 = x2*x2; return x4*x4; } ++extern inline __attribute__((__gnu_inline__)) double gsl_pow_9(const double x) { double x3 = x*x*x; return x3*x3*x3; } + #else + double gsl_pow_2(const double x); + double gsl_pow_3(const double x); +diff -up gsl-1.12/interpolation/gsl_interp.h.pom gsl-1.12/interpolation/gsl_interp.h +--- gsl-1.12/interpolation/gsl_interp.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/interpolation/gsl_interp.h 2008-06-17 10:40:53.000000000 -0400 +@@ -152,11 +152,11 @@ size_t gsl_interp_bsearch(const double x + size_t index_lo, size_t index_hi); + + #ifdef HAVE_INLINE +-extern inline size_t ++extern inline __attribute__((__gnu_inline__)) size_t + gsl_interp_bsearch(const double x_array[], double x, + size_t index_lo, size_t index_hi); + +-extern inline size_t ++extern inline __attribute__((__gnu_inline__)) size_t + gsl_interp_bsearch(const double x_array[], double x, + size_t index_lo, size_t index_hi) + { +@@ -175,7 +175,7 @@ gsl_interp_bsearch(const double x_array[ + #endif + + #ifdef HAVE_INLINE +-extern inline size_t ++extern inline __attribute__((__gnu_inline__)) size_t + gsl_interp_accel_find(gsl_interp_accel * a, const double xa[], size_t len, double x) + { + size_t x_index = a->cache; +diff -up gsl-1.12/matrix/gsl_matrix_char.h.pom gsl-1.12/matrix/gsl_matrix_char.h +--- gsl-1.12/matrix/gsl_matrix_char.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_char.h 2008-06-17 10:40:53.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_char_set_col(gsl_matrix_c + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + char + gsl_matrix_char_get(const gsl_matrix_char * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_char_get(const gsl_matrix_cha + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_char_set(gsl_matrix_char * m, const size_t i, const size_t j, const char x) + { +@@ -294,7 +294,7 @@ gsl_matrix_char_set(gsl_matrix_char * m, + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + char * + gsl_matrix_char_ptr(gsl_matrix_char * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_char_ptr(gsl_matrix_char * m, + return (char *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const char * + gsl_matrix_char_const_ptr(const gsl_matrix_char * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_complex_double.h.pom gsl-1.12/matrix/gsl_matrix_complex_double.h +--- gsl-1.12/matrix/gsl_matrix_complex_double.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_complex_double.h 2008-06-17 10:40:53.000000000 -0400 +@@ -252,7 +252,7 @@ int gsl_matrix_complex_set_col(gsl_matri + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex + gsl_matrix_complex_get(const gsl_matrix_complex * m, + const size_t i, const size_t j) +@@ -272,7 +272,7 @@ gsl_matrix_complex_get(const gsl_matrix_ + return *(gsl_complex *)(m->data + 2*(i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_complex_set(gsl_matrix_complex * m, + const size_t i, const size_t j, const gsl_complex x) +@@ -290,7 +290,7 @@ gsl_matrix_complex_set(gsl_matrix_comple + *(gsl_complex *)(m->data + 2*(i * m->tda + j)) = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex * + gsl_matrix_complex_ptr(gsl_matrix_complex * m, + const size_t i, const size_t j) +@@ -308,7 +308,7 @@ gsl_matrix_complex_ptr(gsl_matrix_comple + return (gsl_complex *)(m->data + 2*(i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const gsl_complex * + gsl_matrix_complex_const_ptr(const gsl_matrix_complex * m, + const size_t i, const size_t j) +diff -up gsl-1.12/matrix/gsl_matrix_complex_float.h.pom gsl-1.12/matrix/gsl_matrix_complex_float.h +--- gsl-1.12/matrix/gsl_matrix_complex_float.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_complex_float.h 2008-06-17 10:40:53.000000000 -0400 +@@ -252,7 +252,7 @@ int gsl_matrix_complex_float_set_col(gsl + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex_float + gsl_matrix_complex_float_get(const gsl_matrix_complex_float * m, + const size_t i, const size_t j) +@@ -272,7 +272,7 @@ gsl_matrix_complex_float_get(const gsl_m + return *(gsl_complex_float *)(m->data + 2*(i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_complex_float_set(gsl_matrix_complex_float * m, + const size_t i, const size_t j, const gsl_complex_float x) +@@ -290,7 +290,7 @@ gsl_matrix_complex_float_set(gsl_matrix_ + *(gsl_complex_float *)(m->data + 2*(i * m->tda + j)) = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex_float * + gsl_matrix_complex_float_ptr(gsl_matrix_complex_float * m, + const size_t i, const size_t j) +@@ -308,7 +308,7 @@ gsl_matrix_complex_float_ptr(gsl_matrix_ + return (gsl_complex_float *)(m->data + 2*(i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const gsl_complex_float * + gsl_matrix_complex_float_const_ptr(const gsl_matrix_complex_float * m, + const size_t i, const size_t j) +diff -up gsl-1.12/matrix/gsl_matrix_complex_long_double.h.pom gsl-1.12/matrix/gsl_matrix_complex_long_double.h +--- gsl-1.12/matrix/gsl_matrix_complex_long_double.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_complex_long_double.h 2008-06-17 10:40:53.000000000 -0400 +@@ -252,7 +252,7 @@ int gsl_matrix_complex_long_double_set_c + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex_long_double + gsl_matrix_complex_long_double_get(const gsl_matrix_complex_long_double * m, + const size_t i, const size_t j) +@@ -272,7 +272,7 @@ gsl_matrix_complex_long_double_get(const + return *(gsl_complex_long_double *)(m->data + 2*(i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_complex_long_double_set(gsl_matrix_complex_long_double * m, + const size_t i, const size_t j, const gsl_complex_long_double x) +@@ -290,7 +290,7 @@ gsl_matrix_complex_long_double_set(gsl_m + *(gsl_complex_long_double *)(m->data + 2*(i * m->tda + j)) = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex_long_double * + gsl_matrix_complex_long_double_ptr(gsl_matrix_complex_long_double * m, + const size_t i, const size_t j) +@@ -308,7 +308,7 @@ gsl_matrix_complex_long_double_ptr(gsl_m + return (gsl_complex_long_double *)(m->data + 2*(i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const gsl_complex_long_double * + gsl_matrix_complex_long_double_const_ptr(const gsl_matrix_complex_long_double * m, + const size_t i, const size_t j) +diff -up gsl-1.12/matrix/gsl_matrix_double.h.pom gsl-1.12/matrix/gsl_matrix_double.h +--- gsl-1.12/matrix/gsl_matrix_double.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_double.h 2008-06-17 10:40:53.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_set_col(gsl_matrix * m, c + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + double + gsl_matrix_get(const gsl_matrix * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_get(const gsl_matrix * m, con + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_set(gsl_matrix * m, const size_t i, const size_t j, const double x) + { +@@ -294,7 +294,7 @@ gsl_matrix_set(gsl_matrix * m, const siz + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + double * + gsl_matrix_ptr(gsl_matrix * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_ptr(gsl_matrix * m, const siz + return (double *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const double * + gsl_matrix_const_ptr(const gsl_matrix * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_float.h.pom gsl-1.12/matrix/gsl_matrix_float.h +--- gsl-1.12/matrix/gsl_matrix_float.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_float.h 2008-06-17 10:40:53.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_float_set_col(gsl_matrix_ + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + float + gsl_matrix_float_get(const gsl_matrix_float * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_float_get(const gsl_matrix_fl + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_float_set(gsl_matrix_float * m, const size_t i, const size_t j, const float x) + { +@@ -294,7 +294,7 @@ gsl_matrix_float_set(gsl_matrix_float * + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + float * + gsl_matrix_float_ptr(gsl_matrix_float * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_float_ptr(gsl_matrix_float * + return (float *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const float * + gsl_matrix_float_const_ptr(const gsl_matrix_float * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_int.h.pom gsl-1.12/matrix/gsl_matrix_int.h +--- gsl-1.12/matrix/gsl_matrix_int.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_int.h 2008-06-17 10:40:53.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_int_set_col(gsl_matrix_in + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + int + gsl_matrix_int_get(const gsl_matrix_int * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_int_get(const gsl_matrix_int + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_int_set(gsl_matrix_int * m, const size_t i, const size_t j, const int x) + { +@@ -294,7 +294,7 @@ gsl_matrix_int_set(gsl_matrix_int * m, c + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + int * + gsl_matrix_int_ptr(gsl_matrix_int * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_int_ptr(gsl_matrix_int * m, c + return (int *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const int * + gsl_matrix_int_const_ptr(const gsl_matrix_int * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_long_double.h.pom gsl-1.12/matrix/gsl_matrix_long_double.h +--- gsl-1.12/matrix/gsl_matrix_long_double.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_long_double.h 2008-06-17 10:40:53.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_long_double_set_col(gsl_m + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + long double + gsl_matrix_long_double_get(const gsl_matrix_long_double * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_long_double_get(const gsl_mat + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_long_double_set(gsl_matrix_long_double * m, const size_t i, const size_t j, const long double x) + { +@@ -294,7 +294,7 @@ gsl_matrix_long_double_set(gsl_matrix_lo + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + long double * + gsl_matrix_long_double_ptr(gsl_matrix_long_double * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_long_double_ptr(gsl_matrix_lo + return (long double *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const long double * + gsl_matrix_long_double_const_ptr(const gsl_matrix_long_double * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_long.h.pom gsl-1.12/matrix/gsl_matrix_long.h +--- gsl-1.12/matrix/gsl_matrix_long.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_long.h 2008-06-17 10:40:53.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_long_set_col(gsl_matrix_l + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + long + gsl_matrix_long_get(const gsl_matrix_long * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_long_get(const gsl_matrix_lon + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_long_set(gsl_matrix_long * m, const size_t i, const size_t j, const long x) + { +@@ -294,7 +294,7 @@ gsl_matrix_long_set(gsl_matrix_long * m, + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + long * + gsl_matrix_long_ptr(gsl_matrix_long * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_long_ptr(gsl_matrix_long * m, + return (long *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const long * + gsl_matrix_long_const_ptr(const gsl_matrix_long * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_short.h.pom gsl-1.12/matrix/gsl_matrix_short.h +--- gsl-1.12/matrix/gsl_matrix_short.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_short.h 2008-06-17 10:40:53.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_short_set_col(gsl_matrix_ + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + short + gsl_matrix_short_get(const gsl_matrix_short * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_short_get(const gsl_matrix_sh + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_short_set(gsl_matrix_short * m, const size_t i, const size_t j, const short x) + { +@@ -294,7 +294,7 @@ gsl_matrix_short_set(gsl_matrix_short * + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + short * + gsl_matrix_short_ptr(gsl_matrix_short * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_short_ptr(gsl_matrix_short * + return (short *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const short * + gsl_matrix_short_const_ptr(const gsl_matrix_short * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_uchar.h.pom gsl-1.12/matrix/gsl_matrix_uchar.h +--- gsl-1.12/matrix/gsl_matrix_uchar.h.pom 2008-06-17 10:40:53.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_uchar.h 2008-06-17 10:40:53.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_uchar_set_col(gsl_matrix_ + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned char + gsl_matrix_uchar_get(const gsl_matrix_uchar * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_uchar_get(const gsl_matrix_uc + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_uchar_set(gsl_matrix_uchar * m, const size_t i, const size_t j, const unsigned char x) + { +@@ -294,7 +294,7 @@ gsl_matrix_uchar_set(gsl_matrix_uchar * + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned char * + gsl_matrix_uchar_ptr(gsl_matrix_uchar * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_uchar_ptr(gsl_matrix_uchar * + return (unsigned char *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const unsigned char * + gsl_matrix_uchar_const_ptr(const gsl_matrix_uchar * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_uint.h.pom gsl-1.12/matrix/gsl_matrix_uint.h +--- gsl-1.12/matrix/gsl_matrix_uint.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_uint.h 2008-06-17 10:40:54.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_uint_set_col(gsl_matrix_u + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned int + gsl_matrix_uint_get(const gsl_matrix_uint * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_uint_get(const gsl_matrix_uin + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_uint_set(gsl_matrix_uint * m, const size_t i, const size_t j, const unsigned int x) + { +@@ -294,7 +294,7 @@ gsl_matrix_uint_set(gsl_matrix_uint * m, + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned int * + gsl_matrix_uint_ptr(gsl_matrix_uint * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_uint_ptr(gsl_matrix_uint * m, + return (unsigned int *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const unsigned int * + gsl_matrix_uint_const_ptr(const gsl_matrix_uint * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_ulong.h.pom gsl-1.12/matrix/gsl_matrix_ulong.h +--- gsl-1.12/matrix/gsl_matrix_ulong.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_ulong.h 2008-06-17 10:40:54.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_ulong_set_col(gsl_matrix_ + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned long + gsl_matrix_ulong_get(const gsl_matrix_ulong * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_ulong_get(const gsl_matrix_ul + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_ulong_set(gsl_matrix_ulong * m, const size_t i, const size_t j, const unsigned long x) + { +@@ -294,7 +294,7 @@ gsl_matrix_ulong_set(gsl_matrix_ulong * + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned long * + gsl_matrix_ulong_ptr(gsl_matrix_ulong * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_ulong_ptr(gsl_matrix_ulong * + return (unsigned long *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const unsigned long * + gsl_matrix_ulong_const_ptr(const gsl_matrix_ulong * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/matrix/gsl_matrix_ushort.h.pom gsl-1.12/matrix/gsl_matrix_ushort.h +--- gsl-1.12/matrix/gsl_matrix_ushort.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/matrix/gsl_matrix_ushort.h 2008-06-17 10:40:54.000000000 -0400 +@@ -260,7 +260,7 @@ int gsl_matrix_ushort_set_col(gsl_matrix + /* inline functions if you are using GCC */ + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned short + gsl_matrix_ushort_get(const gsl_matrix_ushort * m, const size_t i, const size_t j) + { +@@ -277,7 +277,7 @@ gsl_matrix_ushort_get(const gsl_matrix_u + return m->data[i * m->tda + j] ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_matrix_ushort_set(gsl_matrix_ushort * m, const size_t i, const size_t j, const unsigned short x) + { +@@ -294,7 +294,7 @@ gsl_matrix_ushort_set(gsl_matrix_ushort + m->data[i * m->tda + j] = x ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned short * + gsl_matrix_ushort_ptr(gsl_matrix_ushort * m, const size_t i, const size_t j) + { +@@ -311,7 +311,7 @@ gsl_matrix_ushort_ptr(gsl_matrix_ushort + return (unsigned short *) (m->data + (i * m->tda + j)) ; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const unsigned short * + gsl_matrix_ushort_const_ptr(const gsl_matrix_ushort * m, const size_t i, const size_t j) + { +diff -up gsl-1.12/permutation/gsl_permutation.h.pom gsl-1.12/permutation/gsl_permutation.h +--- gsl-1.12/permutation/gsl_permutation.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/permutation/gsl_permutation.h 2008-06-17 10:40:54.000000000 -0400 +@@ -78,7 +78,7 @@ size_t gsl_permutation_canonical_cycles + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + size_t + gsl_permutation_get (const gsl_permutation * p, const size_t i) + { +diff -up gsl-1.12/poly/gsl_poly.h.pom gsl-1.12/poly/gsl_poly.h +--- gsl-1.12/poly/gsl_poly.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/poly/gsl_poly.h 2008-06-17 10:40:54.000000000 -0400 +@@ -54,7 +54,7 @@ gsl_complex gsl_complex_poly_complex_eva + + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + double + gsl_poly_eval(const double c[], const int len, const double x) + { +@@ -64,7 +64,7 @@ gsl_poly_eval(const double c[], const in + return ans; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex + gsl_poly_complex_eval(const double c[], const int len, const gsl_complex z) + { +@@ -82,7 +82,7 @@ gsl_poly_complex_eval(const double c[], + return ans; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex + gsl_complex_poly_complex_eval(const gsl_complex c[], const int len, const gsl_complex z) + { +@@ -110,7 +110,7 @@ double + gsl_poly_dd_eval (const double dd[], const double xa[], const size_t size, const double x); + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + double + gsl_poly_dd_eval(const double dd[], const double xa[], const size_t size, const double x) + { +diff -up gsl-1.12/qrng/gsl_qrng.h.pom gsl-1.12/qrng/gsl_qrng.h +--- gsl-1.12/qrng/gsl_qrng.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/qrng/gsl_qrng.h 2008-06-17 10:40:54.000000000 -0400 +@@ -97,8 +97,8 @@ int gsl_qrng_get (const gsl_qrng * q, do + + + #ifdef HAVE_INLINE +-extern inline int gsl_qrng_get (const gsl_qrng * q, double x[]); +-extern inline int gsl_qrng_get (const gsl_qrng * q, double x[]) ++extern inline __attribute__((__gnu_inline__)) int gsl_qrng_get (const gsl_qrng * q, double x[]); ++extern inline __attribute__((__gnu_inline__)) int gsl_qrng_get (const gsl_qrng * q, double x[]) + { + return (q->type->get) (q->state, q->dimension, x); + } +diff -up gsl-1.12/rng/gsl_rng.h.pom gsl-1.12/rng/gsl_rng.h +--- gsl-1.12/rng/gsl_rng.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/rng/gsl_rng.h 2008-06-17 10:40:54.000000000 -0400 +@@ -154,25 +154,25 @@ unsigned long int gsl_rng_uniform_int (c + + + #ifdef HAVE_INLINE +-extern inline unsigned long int gsl_rng_get (const gsl_rng * r); ++extern inline __attribute__((__gnu_inline__)) unsigned long int gsl_rng_get (const gsl_rng * r); + +-extern inline unsigned long int ++extern inline __attribute__((__gnu_inline__)) unsigned long int + gsl_rng_get (const gsl_rng * r) + { + return (r->type->get) (r->state); + } + +-extern inline double gsl_rng_uniform (const gsl_rng * r); ++extern inline __attribute__((__gnu_inline__)) double gsl_rng_uniform (const gsl_rng * r); + +-extern inline double ++extern inline __attribute__((__gnu_inline__)) double + gsl_rng_uniform (const gsl_rng * r) + { + return (r->type->get_double) (r->state); + } + +-extern inline double gsl_rng_uniform_pos (const gsl_rng * r); ++extern inline __attribute__((__gnu_inline__)) double gsl_rng_uniform_pos (const gsl_rng * r); + +-extern inline double ++extern inline __attribute__((__gnu_inline__)) double + gsl_rng_uniform_pos (const gsl_rng * r) + { + double x ; +@@ -185,9 +185,9 @@ gsl_rng_uniform_pos (const gsl_rng * r) + return x ; + } + +-extern inline unsigned long int gsl_rng_uniform_int (const gsl_rng * r, unsigned long int n); ++extern inline __attribute__((__gnu_inline__)) unsigned long int gsl_rng_uniform_int (const gsl_rng * r, unsigned long int n); + +-extern inline unsigned long int ++extern inline __attribute__((__gnu_inline__)) unsigned long int + gsl_rng_uniform_int (const gsl_rng * r, unsigned long int n) + { + unsigned long int offset = r->type->min; +diff -up gsl-1.12/specfunc/gsl_sf_legendre.h.pom gsl-1.12/specfunc/gsl_sf_legendre.h +--- gsl-1.12/specfunc/gsl_sf_legendre.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/specfunc/gsl_sf_legendre.h 2008-06-17 10:40:54.000000000 -0400 +@@ -312,7 +312,7 @@ int gsl_sf_legendre_H3d_array(const int + + + #ifdef HAVE_INLINE +-extern inline ++extern inline __attribute__((__gnu_inline__)) + int + gsl_sf_legendre_array_size(const int lmax, const int m) + { +diff -up gsl-1.12/vector/gsl_vector_char.h.pom gsl-1.12/vector/gsl_vector_char.h +--- gsl-1.12/vector/gsl_vector_char.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_char.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_char_isnonneg (const gsl_ + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + char + gsl_vector_char_get (const gsl_vector_char * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_char_get (const gsl_vector_ch + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_char_set (gsl_vector_char * v, const size_t i, char x) + { +@@ -193,7 +193,7 @@ gsl_vector_char_set (gsl_vector_char * v + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + char * + gsl_vector_char_ptr (gsl_vector_char * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_char_ptr (gsl_vector_char * v + return (char *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const char * + gsl_vector_char_const_ptr (const gsl_vector_char * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_complex_double.h.pom gsl-1.12/vector/gsl_vector_complex_double.h +--- gsl-1.12/vector/gsl_vector_complex_double.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_complex_double.h 2008-06-17 10:40:54.000000000 -0400 +@@ -182,7 +182,7 @@ int gsl_vector_complex_isneg (const gsl_ + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex + gsl_vector_complex_get (const gsl_vector_complex * v, + const size_t i) +@@ -197,7 +197,7 @@ gsl_vector_complex_get (const gsl_vector + return *GSL_COMPLEX_AT (v, i); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_complex_set (gsl_vector_complex * v, + const size_t i, gsl_complex z) +@@ -211,7 +211,7 @@ gsl_vector_complex_set (gsl_vector_compl + *GSL_COMPLEX_AT (v, i) = z; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex * + gsl_vector_complex_ptr (gsl_vector_complex * v, + const size_t i) +@@ -225,7 +225,7 @@ gsl_vector_complex_ptr (gsl_vector_compl + return GSL_COMPLEX_AT (v, i); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const gsl_complex * + gsl_vector_complex_const_ptr (const gsl_vector_complex * v, + const size_t i) +diff -up gsl-1.12/vector/gsl_vector_complex_float.h.pom gsl-1.12/vector/gsl_vector_complex_float.h +--- gsl-1.12/vector/gsl_vector_complex_float.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_complex_float.h 2008-06-17 10:40:54.000000000 -0400 +@@ -182,7 +182,7 @@ int gsl_vector_complex_float_isneg (cons + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex_float + gsl_vector_complex_float_get (const gsl_vector_complex_float * v, + const size_t i) +@@ -197,7 +197,7 @@ gsl_vector_complex_float_get (const gsl_ + return *GSL_COMPLEX_FLOAT_AT (v, i); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_complex_float_set (gsl_vector_complex_float * v, + const size_t i, gsl_complex_float z) +@@ -211,7 +211,7 @@ gsl_vector_complex_float_set (gsl_vector + *GSL_COMPLEX_FLOAT_AT (v, i) = z; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex_float * + gsl_vector_complex_float_ptr (gsl_vector_complex_float * v, + const size_t i) +@@ -225,7 +225,7 @@ gsl_vector_complex_float_ptr (gsl_vector + return GSL_COMPLEX_FLOAT_AT (v, i); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const gsl_complex_float * + gsl_vector_complex_float_const_ptr (const gsl_vector_complex_float * v, + const size_t i) +diff -up gsl-1.12/vector/gsl_vector_complex_long_double.h.pom gsl-1.12/vector/gsl_vector_complex_long_double.h +--- gsl-1.12/vector/gsl_vector_complex_long_double.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_complex_long_double.h 2008-06-17 10:40:54.000000000 -0400 +@@ -182,7 +182,7 @@ int gsl_vector_complex_long_double_isneg + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex_long_double + gsl_vector_complex_long_double_get (const gsl_vector_complex_long_double * v, + const size_t i) +@@ -197,7 +197,7 @@ gsl_vector_complex_long_double_get (cons + return *GSL_COMPLEX_LONG_DOUBLE_AT (v, i); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_complex_long_double_set (gsl_vector_complex_long_double * v, + const size_t i, gsl_complex_long_double z) +@@ -211,7 +211,7 @@ gsl_vector_complex_long_double_set (gsl_ + *GSL_COMPLEX_LONG_DOUBLE_AT (v, i) = z; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + gsl_complex_long_double * + gsl_vector_complex_long_double_ptr (gsl_vector_complex_long_double * v, + const size_t i) +@@ -225,7 +225,7 @@ gsl_vector_complex_long_double_ptr (gsl_ + return GSL_COMPLEX_LONG_DOUBLE_AT (v, i); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const gsl_complex_long_double * + gsl_vector_complex_long_double_const_ptr (const gsl_vector_complex_long_double * v, + const size_t i) +diff -up gsl-1.12/vector/gsl_vector_double.h.pom gsl-1.12/vector/gsl_vector_double.h +--- gsl-1.12/vector/gsl_vector_double.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_double.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_isnonneg (const gsl_vecto + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + double + gsl_vector_get (const gsl_vector * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_get (const gsl_vector * v, co + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_set (gsl_vector * v, const size_t i, double x) + { +@@ -193,7 +193,7 @@ gsl_vector_set (gsl_vector * v, const si + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + double * + gsl_vector_ptr (gsl_vector * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_ptr (gsl_vector * v, const si + return (double *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const double * + gsl_vector_const_ptr (const gsl_vector * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_float.h.pom gsl-1.12/vector/gsl_vector_float.h +--- gsl-1.12/vector/gsl_vector_float.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_float.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_float_isnonneg (const gsl + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + float + gsl_vector_float_get (const gsl_vector_float * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_float_get (const gsl_vector_f + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_float_set (gsl_vector_float * v, const size_t i, float x) + { +@@ -193,7 +193,7 @@ gsl_vector_float_set (gsl_vector_float * + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + float * + gsl_vector_float_ptr (gsl_vector_float * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_float_ptr (gsl_vector_float * + return (float *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const float * + gsl_vector_float_const_ptr (const gsl_vector_float * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_int.h.pom gsl-1.12/vector/gsl_vector_int.h +--- gsl-1.12/vector/gsl_vector_int.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_int.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_int_isnonneg (const gsl_v + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + int + gsl_vector_int_get (const gsl_vector_int * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_int_get (const gsl_vector_int + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_int_set (gsl_vector_int * v, const size_t i, int x) + { +@@ -193,7 +193,7 @@ gsl_vector_int_set (gsl_vector_int * v, + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + int * + gsl_vector_int_ptr (gsl_vector_int * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_int_ptr (gsl_vector_int * v, + return (int *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const int * + gsl_vector_int_const_ptr (const gsl_vector_int * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_long_double.h.pom gsl-1.12/vector/gsl_vector_long_double.h +--- gsl-1.12/vector/gsl_vector_long_double.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_long_double.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_long_double_isnonneg (con + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + long double + gsl_vector_long_double_get (const gsl_vector_long_double * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_long_double_get (const gsl_ve + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_long_double_set (gsl_vector_long_double * v, const size_t i, long double x) + { +@@ -193,7 +193,7 @@ gsl_vector_long_double_set (gsl_vector_l + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + long double * + gsl_vector_long_double_ptr (gsl_vector_long_double * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_long_double_ptr (gsl_vector_l + return (long double *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const long double * + gsl_vector_long_double_const_ptr (const gsl_vector_long_double * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_long.h.pom gsl-1.12/vector/gsl_vector_long.h +--- gsl-1.12/vector/gsl_vector_long.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_long.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_long_isnonneg (const gsl_ + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + long + gsl_vector_long_get (const gsl_vector_long * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_long_get (const gsl_vector_lo + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_long_set (gsl_vector_long * v, const size_t i, long x) + { +@@ -193,7 +193,7 @@ gsl_vector_long_set (gsl_vector_long * v + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + long * + gsl_vector_long_ptr (gsl_vector_long * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_long_ptr (gsl_vector_long * v + return (long *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const long * + gsl_vector_long_const_ptr (const gsl_vector_long * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_short.h.pom gsl-1.12/vector/gsl_vector_short.h +--- gsl-1.12/vector/gsl_vector_short.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_short.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_short_isnonneg (const gsl + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + short + gsl_vector_short_get (const gsl_vector_short * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_short_get (const gsl_vector_s + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_short_set (gsl_vector_short * v, const size_t i, short x) + { +@@ -193,7 +193,7 @@ gsl_vector_short_set (gsl_vector_short * + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + short * + gsl_vector_short_ptr (gsl_vector_short * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_short_ptr (gsl_vector_short * + return (short *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const short * + gsl_vector_short_const_ptr (const gsl_vector_short * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_uchar.h.pom gsl-1.12/vector/gsl_vector_uchar.h +--- gsl-1.12/vector/gsl_vector_uchar.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_uchar.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_uchar_isnonneg (const gsl + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned char + gsl_vector_uchar_get (const gsl_vector_uchar * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_uchar_get (const gsl_vector_u + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_uchar_set (gsl_vector_uchar * v, const size_t i, unsigned char x) + { +@@ -193,7 +193,7 @@ gsl_vector_uchar_set (gsl_vector_uchar * + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned char * + gsl_vector_uchar_ptr (gsl_vector_uchar * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_uchar_ptr (gsl_vector_uchar * + return (unsigned char *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const unsigned char * + gsl_vector_uchar_const_ptr (const gsl_vector_uchar * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_uint.h.pom gsl-1.12/vector/gsl_vector_uint.h +--- gsl-1.12/vector/gsl_vector_uint.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_uint.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_uint_isnonneg (const gsl_ + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned int + gsl_vector_uint_get (const gsl_vector_uint * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_uint_get (const gsl_vector_ui + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_uint_set (gsl_vector_uint * v, const size_t i, unsigned int x) + { +@@ -193,7 +193,7 @@ gsl_vector_uint_set (gsl_vector_uint * v + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned int * + gsl_vector_uint_ptr (gsl_vector_uint * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_uint_ptr (gsl_vector_uint * v + return (unsigned int *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const unsigned int * + gsl_vector_uint_const_ptr (const gsl_vector_uint * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_ulong.h.pom gsl-1.12/vector/gsl_vector_ulong.h +--- gsl-1.12/vector/gsl_vector_ulong.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_ulong.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_ulong_isnonneg (const gsl + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned long + gsl_vector_ulong_get (const gsl_vector_ulong * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_ulong_get (const gsl_vector_u + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_ulong_set (gsl_vector_ulong * v, const size_t i, unsigned long x) + { +@@ -193,7 +193,7 @@ gsl_vector_ulong_set (gsl_vector_ulong * + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned long * + gsl_vector_ulong_ptr (gsl_vector_ulong * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_ulong_ptr (gsl_vector_ulong * + return (unsigned long *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const unsigned long * + gsl_vector_ulong_const_ptr (const gsl_vector_ulong * v, const size_t i) + { +diff -up gsl-1.12/vector/gsl_vector_ushort.h.pom gsl-1.12/vector/gsl_vector_ushort.h +--- gsl-1.12/vector/gsl_vector_ushort.h.pom 2008-06-17 10:40:54.000000000 -0400 ++++ gsl-1.12/vector/gsl_vector_ushort.h 2008-06-17 10:40:54.000000000 -0400 +@@ -167,7 +167,7 @@ int gsl_vector_ushort_isnonneg (const gs + + #ifdef HAVE_INLINE + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned short + gsl_vector_ushort_get (const gsl_vector_ushort * v, const size_t i) + { +@@ -180,7 +180,7 @@ gsl_vector_ushort_get (const gsl_vector_ + return v->data[i * v->stride]; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + void + gsl_vector_ushort_set (gsl_vector_ushort * v, const size_t i, unsigned short x) + { +@@ -193,7 +193,7 @@ gsl_vector_ushort_set (gsl_vector_ushort + v->data[i * v->stride] = x; + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + unsigned short * + gsl_vector_ushort_ptr (gsl_vector_ushort * v, const size_t i) + { +@@ -206,7 +206,7 @@ gsl_vector_ushort_ptr (gsl_vector_ushort + return (unsigned short *) (v->data + i * v->stride); + } + +-extern inline ++extern inline __attribute__((__gnu_inline__)) + const unsigned short * + gsl_vector_ushort_const_ptr (const gsl_vector_ushort * v, const size_t i) + { diff --git a/gsl.spec b/gsl.spec index 8904b8a..344811a 100644 --- a/gsl.spec +++ b/gsl.spec @@ -1,10 +1,11 @@ Summary: The GNU Scientific Library for numerical analysis Name: gsl Version: 1.11 -Release: 1%{?dist} +Release: 2%{?dist} URL: http://www.gnu.org/software/gsl/ Source: ftp://ftp.gnu.org/gnu/gsl/%{name}-%{version}.tar.gz Patch0: gsl-1.10-lib64.patch +Patch1: gsl-1.11-gcc43.patch # info part of this package is under GFDL license # eigen/nonsymmv.c and eigen/schur.c # contains rutiens which are part of LAPACK - under BSD style license @@ -40,6 +41,7 @@ The gsl-static package includes static libraries of GSL. %prep %setup -q %patch0 -p1 -b .lib64 +%patch1 -p1 -b .gcc43 iconv -f windows-1252 -t utf-8 THANKS > THANKS.aux touch -r THANKS THANKS.aux mv THANKS.aux THANKS @@ -99,6 +101,10 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/*.a %changelog +* Wed Jun 18 2008 Ivana Varekova - 1.11-2 +- Resolves: #451006 + programs build with gcc 4.3 based on gsl require -fgnu89-inline + * Mon Jun 16 2008 Ivana Varekova - 1.11-1 - update to 1.11