On Thursday 11 December 2014 20:32:59 Kiyoshi KANAZAWA wrote:
> Hello,
>
> Not easy for me to analyze, but I can comment.
>
> When tried to make wget-1.16.1 on Solaris10 x86,
>
> configuring with "--without-libiconv-prefix --without-libintl-prefix",
> make failed with message:
> === from here, message ==>
> In file included from http.c:32:0:
> /usr/include/libintl.h:62:14: error: expected identifier or '(' before
> 'char' extern char *ngettext(const char *, const char *, unsigned long
> int); ^
> Makefile:1542: recipe for target 'http.o' failed
>
> === till here, message ==>
>
> Your patch solves this...

Good to hear, thanks for testing.

> ...but ld (gcc -o wget) fails with message:
> === from here, message ==> Undefined                       first referenced
>  symbol                             in file
> strcasestr                          iri.o
> ld: fatal: symbol referencing errors. No output written to wget
> collect2: error: ld returned 1 exit status
>
> === till here, message ==
This is a different issue (I wonder why this does not happen me).
Could you please test the attached patch ?
BUT: you have to ./bootstrap and ./configure again after applying the patch.

Tim
From 365d48fb7c1b2c5670c360b74cf64467227d2ca6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tim Rühsen?= <[email protected]>
Date: Thu, 11 Dec 2014 12:53:05 +0100
Subject: [PATCH] Use c_strcasestr instead of strcasestr in iri.c

This also fixes a problem with strcasestr not being in the
boostrap.conf module list.

Reported-by: Kiyoshi KANAZAWA <[email protected]>
---
 ChangeLog      | 4 ++++
 bootstrap.conf | 1 +
 src/ChangeLog  | 6 ++++++
 src/iri.c      | 3 ++-
 4 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 8a1d60f..33a434f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2014-12-11  Tim Ruehsen <[email protected]>

+	* bootstrap.conf: Add module c-strcasestr
+
+2014-12-11  Tim Ruehsen <[email protected]>
+
 	* README.checkout: Add description for libpcre,
    add description for pkg-config, add description of GnuTLS,
    add 2014 copyright year, use ASCII copyright characters
diff --git a/bootstrap.conf b/bootstrap.conf
index 6befd74..55a6e3c 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -32,6 +32,7 @@ base32
 bind
 c-ctype
 c-strcase
+c-strcasestr
 clock-time
 close
 connect
diff --git a/src/ChangeLog b/src/ChangeLog
index 9aaaeb7..af55fc1 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,11 @@
 2014-12-11  Tim Ruehsen <[email protected]>

+	* iri.c: Use c_strcasestr instead of strcasestr
+
+	Reported-by: Kiyoshi KANAZAWA <[email protected]>
+
+2014-12-11  Tim Ruehsen <[email protected]>
+
 	* wget.h: Fixed define 'ngettext' to WG_NGETTEXT for Solaris 10
 	* spider.c, warc.c: Use WG_NGETTEXT instead of ngettext

diff --git a/src/iri.c b/src/iri.c
index 0686f30..f46ee07 100644
--- a/src/iri.c
+++ b/src/iri.c
@@ -40,6 +40,7 @@ as that of the covered work.  */
 #include "utils.h"
 #include "url.h"
 #include "c-strcase.h"
+#include "c-strcasestr.h"

 /* RFC3987 section 3.1 mandates STD3 ASCII RULES */
 #define IDNA_FLAGS  IDNA_USE_STD3_ASCII_RULES
@@ -56,7 +57,7 @@ parse_charset (char *str)
   if (!str || !*str)
     return NULL;

-  str = strcasestr (str, "charset=");
+  str = c_strcasestr (str, "charset=");
   if (!str)
     return NULL;

--
2.1.3

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to