From 7fdca77e007f0838ecd32b044827678f2b345ff0 Mon Sep 17 00:00:00 2001 From: rennes Date: Thu, 23 Mar 2017 14:29:26 -0400 Subject: [PATCH] gnu: ustr: Fix build with GCC 5. * gnu/packages/patches/ustr-fix-build-with-gcc-5.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/textutils.scm (ustr)[source]: Use patch. Signed-off-by: Leo Famulari --- gnu/local.mk | 1 + .../patches/ustr-fix-build-with-gcc-5.patch | 880 ++++++++++++++++++ gnu/packages/textutils.scm | 4 +- 3 files changed, 884 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/ustr-fix-build-with-gcc-5.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1fa5a339ac..c9e3131c08 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -961,6 +961,7 @@ dist_patch_DATA = \ %D%/packages/patches/unzip-initialize-symlink-flag.patch \ %D%/packages/patches/unzip-overflow-long-fsize.patch \ %D%/packages/patches/unzip-remove-build-date.patch \ + %D%/packages/patches/ustr-fix-build-with-gcc-5.patch \ %D%/packages/patches/util-linux-tests.patch \ %D%/packages/patches/util-linux-CVE-2017-2616.patch \ %D%/packages/patches/upower-builddir.patch \ diff --git a/gnu/packages/patches/ustr-fix-build-with-gcc-5.patch b/gnu/packages/patches/ustr-fix-build-with-gcc-5.patch new file mode 100644 index 0000000000..f301d44055 --- /dev/null +++ b/gnu/packages/patches/ustr-fix-build-with-gcc-5.patch @@ -0,0 +1,880 @@ +This patch allows to compile the 'ustr' package with gcc-5. + +Patch copied from Debian: + +https://anonscm.debian.org/cgit/users/zito-guest/pkg-ustr.git/commit/?id=fb2528fef188b4de51a27c4f688042c36d2d7a18 + +From: Václav Ovsík +Subject: [PATCH] fixes/gnu-inline + +This patch adds `__attribute__ ((gnu_inline))' into prototype macros +before `inline' to force GNU89 behaviour of inline functions +in C99 mode. +See http://www.gnu.org/software/gcc/gcc-5/porting_to.html + +Signed-off-by: Václav Ovsík + +--- + ustr-b-dbg-code.c | 8 ++++---- + ustr-b-opt-code.c | 8 ++++---- + ustr-cmp-dbg-code.c | 8 ++++---- + ustr-cmp-opt-code.c | 8 ++++---- + ustr-compiler.h | 4 ++-- + ustr-fmt-dbg-code.c | 8 ++++---- + ustr-fmt-opt-code.c | 8 ++++---- + ustr-ins-dbg-code.c | 8 ++++---- + ustr-ins-opt-code.c | 8 ++++---- + ustr-io-dbg-code.c | 8 ++++---- + ustr-io-opt-code.c | 8 ++++---- + ustr-main-dbg-code.c | 2 +- + ustr-main-opt-code.c | 2 +- + ustr-parse-dbg-code.c | 8 ++++---- + ustr-parse-opt-code.c | 8 ++++---- + ustr-pool-dbg-code.c | 8 ++++---- + ustr-pool-opt-code.c | 8 ++++---- + ustr-replace-dbg-code.c | 8 ++++---- + ustr-replace-opt-code.c | 8 ++++---- + ustr-sc-dbg-code.c | 8 ++++---- + ustr-sc-opt-code.c | 8 ++++---- + ustr-set-dbg-code.c | 8 ++++---- + ustr-set-opt-code.c | 8 ++++---- + ustr-split-dbg-code.c | 8 ++++---- + ustr-split-opt-code.c | 8 ++++---- + ustr-spn-dbg-code.c | 8 ++++---- + ustr-spn-opt-code.c | 8 ++++---- + ustr-srch-dbg-code.c | 8 ++++---- + ustr-srch-opt-code.c | 8 ++++---- + ustr-sub-dbg-code.c | 8 ++++---- + ustr-sub-opt-code.c | 8 ++++---- + ustr-utf8-dbg-code.c | 8 ++++---- + ustr-utf8-opt-code.c | 8 ++++---- + 33 files changed, 124 insertions(+), 124 deletions(-) + +diff --git a/ustr-b-dbg-code.c b/ustr-b-dbg-code.c +index 4a7fdac..60e383e 100644 +--- a/ustr-b-dbg-code.c ++++ b/ustr-b-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-b.h" +diff --git a/ustr-b-opt-code.c b/ustr-b-opt-code.c +index 45e9e87..4011898 100644 +--- a/ustr-b-opt-code.c ++++ b/ustr-b-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-b.h" +diff --git a/ustr-cmp-dbg-code.c b/ustr-cmp-dbg-code.c +index 7b8af33..4c3adc2 100644 +--- a/ustr-cmp-dbg-code.c ++++ b/ustr-cmp-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-cmp.h" +diff --git a/ustr-cmp-opt-code.c b/ustr-cmp-opt-code.c +index 2076d1c..ff5d02c 100644 +--- a/ustr-cmp-opt-code.c ++++ b/ustr-cmp-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-cmp.h" +diff --git a/ustr-compiler.h b/ustr-compiler.h +index 9e71276..38ae026 100644 +--- a/ustr-compiler.h ++++ b/ustr-compiler.h +@@ -92,7 +92,7 @@ + #endif + + #if USTR_CONF_COMPILE_USE_INLINE +-#define USTR__INLINE inline ++#define USTR__INLINE __attribute__ ((gnu_inline)) inline + #else + #define USTR__INLINE /* no inline */ + #endif +@@ -123,7 +123,7 @@ + # if USTR_CONF_INCLUDE_CODEONLY_HEADERS + # define USTR_CONF_II_PROTO static USTR__INLINE + # else +-# define USTR_CONF_II_PROTO extern inline ++# define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + # endif + #endif + +diff --git a/ustr-fmt-dbg-code.c b/ustr-fmt-dbg-code.c +index 4249bb1..1f147a0 100644 +--- a/ustr-fmt-dbg-code.c ++++ b/ustr-fmt-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-fmt.h" +diff --git a/ustr-fmt-opt-code.c b/ustr-fmt-opt-code.c +index c73e375..989b29f 100644 +--- a/ustr-fmt-opt-code.c ++++ b/ustr-fmt-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-fmt.h" +diff --git a/ustr-ins-dbg-code.c b/ustr-ins-dbg-code.c +index 39f9bba..4c6d5ea 100644 +--- a/ustr-ins-dbg-code.c ++++ b/ustr-ins-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-fmt.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS +@@ -17,5 +17,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-ins.h" +diff --git a/ustr-ins-opt-code.c b/ustr-ins-opt-code.c +index 1aca827..859b44d 100644 +--- a/ustr-ins-opt-code.c ++++ b/ustr-ins-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-fmt.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS +@@ -17,5 +17,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-ins.h" +diff --git a/ustr-io-dbg-code.c b/ustr-io-dbg-code.c +index c361c93..d42e43f 100644 +--- a/ustr-io-dbg-code.c ++++ b/ustr-io-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-io.h" +diff --git a/ustr-io-opt-code.c b/ustr-io-opt-code.c +index b1b4525..ae8de87 100644 +--- a/ustr-io-opt-code.c ++++ b/ustr-io-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-io.h" +diff --git a/ustr-main-dbg-code.c b/ustr-main-dbg-code.c +index 4b821ce..abaa53a 100644 +--- a/ustr-main-dbg-code.c ++++ b/ustr-main-dbg-code.c +@@ -7,5 +7,5 @@ + #define USTR_CONF_E_PROTO extern + #define USTR_CONF_I_PROTO + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" +diff --git a/ustr-main-opt-code.c b/ustr-main-opt-code.c +index 233fb60..7ef6e98 100644 +--- a/ustr-main-opt-code.c ++++ b/ustr-main-opt-code.c +@@ -7,5 +7,5 @@ + #define USTR_CONF_E_PROTO extern + #define USTR_CONF_I_PROTO + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" +diff --git a/ustr-parse-dbg-code.c b/ustr-parse-dbg-code.c +index c9653af..6e1707d 100644 +--- a/ustr-parse-dbg-code.c ++++ b/ustr-parse-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-parse.h" +diff --git a/ustr-parse-opt-code.c b/ustr-parse-opt-code.c +index 0c8df4d..fc96db2 100644 +--- a/ustr-parse-opt-code.c ++++ b/ustr-parse-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-parse.h" +diff --git a/ustr-pool-dbg-code.c b/ustr-pool-dbg-code.c +index adf7519..957f9ca 100644 +--- a/ustr-pool-dbg-code.c ++++ b/ustr-pool-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-pool.h" +diff --git a/ustr-pool-opt-code.c b/ustr-pool-opt-code.c +index 2b0367c..c1b2413 100644 +--- a/ustr-pool-opt-code.c ++++ b/ustr-pool-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-pool.h" +diff --git a/ustr-replace-dbg-code.c b/ustr-replace-dbg-code.c +index fe02187..90531ac 100644 +--- a/ustr-replace-dbg-code.c ++++ b/ustr-replace-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-set.h" + #include "ustr-srch.h" +@@ -19,5 +19,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-replace.h" +diff --git a/ustr-replace-opt-code.c b/ustr-replace-opt-code.c +index e76b3bb..6232753 100644 +--- a/ustr-replace-opt-code.c ++++ b/ustr-replace-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-set.h" + #include "ustr-srch.h" +@@ -19,5 +19,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-replace.h" +diff --git a/ustr-sc-dbg-code.c b/ustr-sc-dbg-code.c +index 0011c63..d7ce317 100644 +--- a/ustr-sc-dbg-code.c ++++ b/ustr-sc-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-spn.h" + #include "ustr-utf8.h" +@@ -18,5 +18,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-sc.h" +diff --git a/ustr-sc-opt-code.c b/ustr-sc-opt-code.c +index 7cb81ba..4a97ed9 100644 +--- a/ustr-sc-opt-code.c ++++ b/ustr-sc-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-spn.h" + #include "ustr-utf8.h" +@@ -18,5 +18,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-sc.h" +diff --git a/ustr-set-dbg-code.c b/ustr-set-dbg-code.c +index 023875a..cf77071 100644 +--- a/ustr-set-dbg-code.c ++++ b/ustr-set-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-fmt.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS +@@ -17,5 +17,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-set.h" +diff --git a/ustr-set-opt-code.c b/ustr-set-opt-code.c +index e726888..34dcaf6 100644 +--- a/ustr-set-opt-code.c ++++ b/ustr-set-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-fmt.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS +@@ -17,5 +17,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-set.h" +diff --git a/ustr-split-dbg-code.c b/ustr-split-dbg-code.c +index 03e5ca5..e40d2a5 100644 +--- a/ustr-split-dbg-code.c ++++ b/ustr-split-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-set.h" + #include "ustr-spn.h" +@@ -19,5 +19,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-split.h" +diff --git a/ustr-split-opt-code.c b/ustr-split-opt-code.c +index d64e300..74f4b1c 100644 +--- a/ustr-split-opt-code.c ++++ b/ustr-split-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-set.h" + #include "ustr-spn.h" +@@ -19,5 +19,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-split.h" +diff --git a/ustr-spn-dbg-code.c b/ustr-spn-dbg-code.c +index ff97432..b0b09d4 100644 +--- a/ustr-spn-dbg-code.c ++++ b/ustr-spn-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-srch.h" + #include "ustr-utf8.h" +@@ -18,5 +18,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-spn.h" +diff --git a/ustr-spn-opt-code.c b/ustr-spn-opt-code.c +index 3ff0a07..92c5ccc 100644 +--- a/ustr-spn-opt-code.c ++++ b/ustr-spn-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-srch.h" + #include "ustr-utf8.h" +@@ -18,5 +18,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-spn.h" +diff --git a/ustr-srch-dbg-code.c b/ustr-srch-dbg-code.c +index 40e4dbf..0f4da21 100644 +--- a/ustr-srch-dbg-code.c ++++ b/ustr-srch-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-cmp-internal.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS +@@ -17,6 +17,6 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-srch.h" + +diff --git a/ustr-srch-opt-code.c b/ustr-srch-opt-code.c +index 635464d..8dde13d 100644 +--- a/ustr-srch-opt-code.c ++++ b/ustr-srch-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-cmp-internal.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS +@@ -17,6 +17,6 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-srch.h" + +diff --git a/ustr-sub-dbg-code.c b/ustr-sub-dbg-code.c +index f994716..b1712e6 100644 +--- a/ustr-sub-dbg-code.c ++++ b/ustr-sub-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-fmt.h" + #include "ustr-ins.h" +@@ -19,5 +19,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-sub.h" +diff --git a/ustr-sub-opt-code.c b/ustr-sub-opt-code.c +index 8cdb4eb..91780c7 100644 +--- a/ustr-sub-opt-code.c ++++ b/ustr-sub-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #include "ustr-fmt.h" + #include "ustr-ins.h" +@@ -19,5 +19,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-sub.h" +diff --git a/ustr-utf8-dbg-code.c b/ustr-utf8-dbg-code.c +index 2666fc2..30786e9 100644 +--- a/ustr-utf8-dbg-code.c ++++ b/ustr-utf8-dbg-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf-debug.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-utf8.h" +diff --git a/ustr-utf8-opt-code.c b/ustr-utf8-opt-code.c +index 91fa754..abdf4c0 100644 +--- a/ustr-utf8-opt-code.c ++++ b/ustr-utf8-opt-code.c +@@ -3,11 +3,11 @@ + #include "ustr-conf.h" + #define USTR_CONF_USE_DYNAMIC_CONF USTR_CONF_HAVE_DYNAMIC_CONF + #define USTR_CONF_e_PROTO extern +-#define USTR_CONF_i_PROTO extern inline ++#define USTR_CONF_i_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_E_PROTO extern +-#define USTR_CONF_I_PROTO extern inline ++#define USTR_CONF_I_PROTO extern __attribute__ ((gnu_inline)) inline + #define USTR_CONF_EI_PROTO extern +-#define USTR_CONF_II_PROTO extern inline ++#define USTR_CONF_II_PROTO extern __attribute__ ((gnu_inline)) inline + #include "ustr-main.h" + #undef USTR_CONF_INCLUDE_CODEONLY_HEADERS + #define USTR_CONF_INCLUDE_CODEONLY_HEADERS 1 +@@ -16,5 +16,5 @@ + #undef USTR_CONF_I_PROTO + #define USTR_CONF_I_PROTO + #undef USTR_CONF_II_PROTO +-#define USTR_CONF_II_PROTO inline ++#define USTR_CONF_II_PROTO __attribute__ ((gnu_inline)) inline + #include "ustr-utf8.h" +-- +tg: (b148fb7..) fixes/gnu-inline (depends on: upstream) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 9e6309a0ed..dbd71c2e8f 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Marius Bakke ;;; Copyright © 2017 Eric Bavier +;;; Copyright © 2017 Rene Saavedra ;;; ;;; This file is part of GNU Guix. ;;; @@ -232,7 +233,8 @@ (define-public ustr "/ustr-" version ".tar.bz2")) (sha256 (base32 - "1i623ygdj7rkizj7985q9d6vj5amwg686aqb5j3ixpkqkyp6xbrx")))) + "1i623ygdj7rkizj7985q9d6vj5amwg686aqb5j3ixpkqkyp6xbrx")) + (patches (search-patches "ustr-fix-build-with-gcc-5.patch")))) (build-system gnu-build-system) (arguments `(#:make-flags