netcat: integrate two fixes
authorRoy.Li <rongqing.li@windriver.com>
Tue, 16 Jul 2013 05:07:46 +0000 (13:07 +0800)
committerPatrick Ohly <patrick.ohly@intel.com>
Fri, 9 Jan 2015 16:31:37 +0000 (08:31 -0800)
1. fix a running issue on PPC, since 'char' type has different range of values
on x86 and on PPC.
2. fix a building issue.

(From meta-openembedded rev: 6c293df99b5bb88072d84d9cf06b9e72fcbfba0c)

Signed-off-by: Roy.Li <rongqing.li@windriver.com>
Signed-off-by: Joe MacDonald <joe.macdonald@windriver.com>
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
meta-openembedded/meta-networking/recipes-support/netcat/netcat/make-netcat_flag_count_work.patch [new file with mode: 0644]
meta-openembedded/meta-networking/recipes-support/netcat/netcat/netcat-locale_h.patch [new file with mode: 0644]
meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb

diff --git a/meta-openembedded/meta-networking/recipes-support/netcat/netcat/make-netcat_flag_count_work.patch b/meta-openembedded/meta-networking/recipes-support/netcat/netcat/make-netcat_flag_count_work.patch
new file mode 100644 (file)
index 0000000..dd1938a
--- /dev/null
@@ -0,0 +1,34 @@
+Make netcat_flag_count() return positive value
+
+C language has 3 distinct char types:
+         char
+         unsigned char
+         signed char
+A char has the same range of values as signed char on X86,
+but same as unsigned char on PPC which made netcat_flag_count
+return a negative value, now we force variable c as signed char
+to make netcat_flag_count return positive value.
+
+Upstream-Status: Pending
+
+Signed-off-by: Roy.Li <rongqing.li@windriver.com>
+---
+ src/flagset.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/src/flagset.c b/src/flagset.c
+index 442b634..54ac898 100644
+--- a/src/flagset.c
++++ b/src/flagset.c
+@@ -134,7 +134,7 @@ unsigned short netcat_flag_next(unsigned short port)
+ int netcat_flag_count(void)
+ {
+-  register char c;
++  register signed char c;
+   register int i;
+   int ret = 0;
+-- 
+1.7.5.4
+
diff --git a/meta-openembedded/meta-networking/recipes-support/netcat/netcat/netcat-locale_h.patch b/meta-openembedded/meta-networking/recipes-support/netcat/netcat/netcat-locale_h.patch
new file mode 100644 (file)
index 0000000..5cbcb08
--- /dev/null
@@ -0,0 +1,25 @@
+Apparently somewhere along the line HAVE_LOCALE_H was changed to
+HAVE_LC_MESSAGES.  Adjust netcat to match.
+
+Upstream-Status: Pending
+
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+
+Index: netcat-0.7.1/src/intl.h
+===================================================================
+--- netcat-0.7.1.orig/src/intl.h
++++ netcat-0.7.1/src/intl.h
+@@ -25,11 +25,11 @@
+ #ifdef ENABLE_NLS
+ #include <libintl.h>
+-#ifdef HAVE_LOCALE_H
++#if defined(HAVE_LC_MESSAGES) || defined(HAVE_LOCALE_H)
+ #include <locale.h>
+ #else
+ #error You must have locale.h in your system
+-#endif        /* HAVE_LOCALE_H */
++#endif        /* HAVE_LC_MESSAGES || HAVE_LOCALE_H */
+ /* Our dear (and very common) gettext macros */
+ #define _(String) gettext(String)
index a4805a4..0bb5c87 100644 (file)
@@ -8,6 +8,8 @@ PR = "r3"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/netcat/netcat-${PV}.tar.bz2 \
            file://obsolete_autoconf_macros.patch \
+           file://netcat-locale_h.patch \
+           file://make-netcat_flag_count_work.patch \
 "
 
 SRC_URI[md5sum] = "0a29eff1736ddb5effd0b1ec1f6fe0ef"