[packages] tmux: fix b64_ntop conflict
authorJo-Philipp Wich <jow@openwrt.org>
Tue, 7 Feb 2012 14:49:34 +0000 (14:49 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Tue, 7 Feb 2012 14:49:34 +0000 (14:49 +0000)
Certain uClibc versions declare b64_ntop but do not actually implement it, this leads to conflicting declarations
when the tmux compat replacement function is used. Rename the replacement to local_b64_ntop and define b64_ntop
to local_b64_ntop if the libc indeed implements it.

SVN-Revision: 30355

utils/tmux/Makefile
utils/tmux/patches/100-b64_ntop-conflict.patch [new file with mode: 0644]

index 71d02ea313c25a4170fd78069f9d7319636c6758..b704b01e5524c43bb65af2f7ef2e516e0ecb3bc4 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=tmux
 PKG_VERSION:=1.6
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=@SF/tmux
diff --git a/utils/tmux/patches/100-b64_ntop-conflict.patch b/utils/tmux/patches/100-b64_ntop-conflict.patch
new file mode 100644 (file)
index 0000000..8e7a8d7
--- /dev/null
@@ -0,0 +1,41 @@
+Index: tmux-1.6/compat.h
+===================================================================
+--- tmux-1.6.orig/compat.h
++++ tmux-1.6/compat.h
+@@ -198,7 +198,9 @@ int                 daemon(int, int);
+ #ifndef HAVE_B64_NTOP
+ /* b64_ntop.c */
+-int            b64_ntop(const char *, size_t, char *, size_t);
++int            local_b64_ntop(const char *, size_t, char *, size_t);
++#else
++#define local_b64_ntop b64_ntop
+ #endif
+ #ifndef HAVE_FORKPTY
+Index: tmux-1.6/compat/b64_ntop.c
+===================================================================
+--- tmux-1.6.orig/compat/b64_ntop.c
++++ tmux-1.6/compat/b64_ntop.c
+@@ -122,7 +122,7 @@ static const char Pad64 = '=';
+    */
+ int
+-b64_ntop(uint8_t const *src, size_t srclength, char *target, size_t targsize) {
++local_b64_ntop(uint8_t const *src, size_t srclength, char *target, size_t targsize) {
+       size_t datalength = 0;
+       uint8_t input[3];
+       uint8_t output[4];
+Index: tmux-1.6/tty.c
+===================================================================
+--- tmux-1.6.orig/tty.c
++++ tmux-1.6/tty.c
+@@ -1006,7 +1006,7 @@ tty_cmd_setselection(struct tty *tty, co
+       off = 4 * ((ctx->num + 2) / 3) + 1; /* storage for base64 */
+       buf = xmalloc(off);
+-      b64_ntop(ctx->ptr, ctx->num, buf, off);
++      local_b64_ntop(ctx->ptr, ctx->num, buf, off);
+       tty_putcode_ptr2(tty, TTYC_MS, "", buf);
+       xfree(buf);