Group :: Sistema/Bibliotecas
RPM: libxcb
Main Changelog Spec Patches Sources Download Gear Bugs e FR Repocop
Patch: libxcb-1.1-alt4.M41.1.patch
Download
Download
.gear/rules | 2 +
.../tags/ebe889e9c5251c7fa6309faea1ff8aea525606d7 | 13 +++
.gear/tags/list | 1 +
configure.ac | 2 +-
libxcb.spec | 109 ++++++++++++++++++++
src/xcb_auth.c | 4 +
src/xcb_conn.c | 2 +-
src/xcb_util.c | 2 +
src/xcb_xlib.c | 2 +-
9 files changed, 134 insertions(+), 3 deletions(-)
diff --git a/.gear/rules b/.gear/rules
new file mode 100644
index 0000000..4fcfd99
--- /dev/null
+++ b/.gear/rules
@@ -0,0 +1,2 @@
+tar: @version@:.
+diff: @version@:. .
diff --git a/.gear/tags/ebe889e9c5251c7fa6309faea1ff8aea525606d7 b/.gear/tags/ebe889e9c5251c7fa6309faea1ff8aea525606d7
new file mode 100644
index 0000000..6d36168
--- /dev/null
+++ b/.gear/tags/ebe889e9c5251c7fa6309faea1ff8aea525606d7
@@ -0,0 +1,13 @@
+object 3c6c8f127c2bce4f45bface7dd45cc719af9de0d
+type commit
+tag 1.1
+tagger Jamey Sharp <jamey@minilop.net> 1194226153 -0800
+
+Release libxcb 1.1
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.6 (GNU/Linux)
+
+iD8DBQBHLnHsp1aplQ4I9mURAtgmAJ4hWC+ZLXncQPQcRIg0R9GR1X6ejQCfTajM
+WLfUOqjWMUjRoPLutMD57lo=
+=Z/53
+-----END PGP SIGNATURE-----
diff --git a/.gear/tags/list b/.gear/tags/list
new file mode 100644
index 0000000..79accd0
--- /dev/null
+++ b/.gear/tags/list
@@ -0,0 +1 @@
+ebe889e9c5251c7fa6309faea1ff8aea525606d7 1.1
diff --git a/configure.ac b/configure.ac
index df554e6..53f23a9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -31,7 +31,7 @@ AC_SUBST(HTML_CHECK_RESULT)
# Checks for pkg-config packages
PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.1)
-NEEDED="pthread-stubs xau >= 0.99.2"
+NEEDED="xau >= 0.99.2"
PKG_CHECK_MODULES(NEEDED, $NEEDED)
have_xdmcp="no"
diff --git a/libxcb.spec b/libxcb.spec
new file mode 100644
index 0000000..ab2a29f
--- /dev/null
+++ b/libxcb.spec
@@ -0,0 +1,109 @@
+Name: libxcb
+Version: 1.1
+Release: alt4.M41.1
+Summary: The X C Binding (XCB) library
+License: MIT/X11
+Group: System/Libraries
+Url: http://xorg.freedesktop.org
+Packager: Valery Inozemtsev <shrek@altlinux.ru>
+
+Source: %name-%version.tar
+Patch: %name-%version-%release.patch
+
+BuildRequires: doxygen gcc-c++ graphviz fonts-ttf-freefont libXau-devel libXdmcp-devel xsltproc xorg-proto-devel
+
+%description
+libxcb provides an interface to the X Window System protocol, slated to
+replace the current Xlib interface. It has several advantages over
+Xlib, including:
+ - size: small library and lower memory footprint
+ - latency hiding: batch several requests and wait for the replies later
+ - direct protocol access: one-to-one mapping between interface and protocol
+ - proven thread support: transparently access XCB from multiple threads
+ - easy extension implementation: interfaces auto-generated from XML-XCB
+
+Xlib can also use XCB as a transport layer, allowing software to make
+requests and receive responses with both, which eases porting to XCB.
+However, client programs, libraries, and toolkits will gain the most
+benefit from a native XCB port.
+
+%package devel
+Summary: XCB Library and Header Files
+Group: Development/C
+Requires: %name = %version-%release
+
+%description devel
+%name-devel contains the libraries and header files needed to
+develop programs which make use of %name.
+
+%prep
+%setup -q
+%patch -p1
+
+%build
+%autoreconf
+%configure \
+ --disable-static
+
+%make_build
+
+%install
+%make DESTDIR=%buildroot \
+ htmldir=%_docdir/%name-devel-%version install
+
+%post -p %post_ldconfig
+
+%postun -p %postun_ldconfig
+
+%files
+%doc NEWS README
+%_libdir/*.so.*
+
+%files devel
+%doc %_docdir/%name-devel-%version
+%_includedir/xcb
+%_libdir/*.so
+%_pkgconfigdir/*.pc
+
+%changelog
+* Sat Sep 27 2008 Valery Inozemtsev <shrek@altlinux.ru> 1.1-alt4.M41.1
+- build for branch 4.1
+
+* Thu Sep 25 2008 Valery Inozemtsev <shrek@altlinux.ru> 1.1-alt5
+- drop libxcb-1.0-abstract-socket.patch
+
+* Tue Dec 11 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.1-alt4
+- rebuild
+
+* Sun Nov 25 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.1-alt3
+- make IPv6 optional
+
+* Fri Nov 16 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.1-alt2
+- update libxcb-1.1-alt-ndebug.patch
+
+* Mon Nov 05 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.1-alt1
+- 1.1
+
+* Mon Oct 29 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.0-alt6
+- GIT snaphot 2007-10-28 (a29fbc2645fabb96d02c382ffef499b48fb1514a)
+
+* Mon Oct 15 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.0-alt5
+- fixed xlib.lock
+- drop libxcb-1.0-lock-unlock.patch
+
+* Sun Oct 14 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.0-alt4
+- libxcb-1.0-abstract-socket.patch: When connecting to the X server, prefer
+ abstract-namespace unix sockets to filesystem-bound sockets.
+
+* Thu Sep 11 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.0-alt3
+- GIT snapshot 2007-07-19 (09045eaac34973662aaa820a94ca8ed66d9dcb4e)
+
+* Thu May 10 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.0-alt2
+- added libxcb-1.0-lock-unlock.patch
+
+* Wed May 09 2007 Valery Inozemtsev <shrek@altlinux.ru> 1.0-alt1
+- 1.0
+
+* Fri Nov 10 2006 Valery Inozemtsev <shrek@altlinux.ru> 0.9.93-alt1
+- initial release
+
diff --git a/src/xcb_auth.c b/src/xcb_auth.c
index ffc0515..3f24690 100644
--- a/src/xcb_auth.c
+++ b/src/xcb_auth.c
@@ -93,6 +93,7 @@ static Xauth *get_authptr(struct sockaddr *sockname, unsigned int socknamelen,
family = FamilyLocal; /* 256 */
switch(sockname->sa_family)
{
+#ifdef AF_INET6
case AF_INET6:
addr = (char *) SIN6_ADDR(sockname);
addrlen = sizeof(*SIN6_ADDR(sockname));
@@ -104,6 +105,7 @@ static Xauth *get_authptr(struct sockaddr *sockname, unsigned int socknamelen,
}
addr += 12;
/* if v4-mapped, fall through. */
+#endif
case AF_INET:
if(!addr)
addr = (char *) &((struct sockaddr_in *)sockname)->sin_addr;
@@ -179,6 +181,7 @@ static int compute_auth(xcb_auth_info_t *info, Xauth *authptr, struct sockaddr *
APPEND(info->data, j, si->sin_port);
}
break;
+#ifdef AF_INET6
case AF_INET6:
/*block*/ {
struct sockaddr_in6 *si6 = (struct sockaddr_in6 *) sockname;
@@ -199,6 +202,7 @@ static int compute_auth(xcb_auth_info_t *info, Xauth *authptr, struct sockaddr *
}
}
break;
+#endif
case AF_UNIX:
/*block*/ {
uint32_t fakeaddr = htonl(0xffffffff - next_nonce());
diff --git a/src/xcb_conn.c b/src/xcb_conn.c
index e7856c3..a26cc4b 100644
--- a/src/xcb_conn.c
+++ b/src/xcb_conn.c
@@ -62,7 +62,7 @@ static int set_fd_flags(const int fd)
static int _xcb_xlib_init(_xcb_xlib *xlib)
{
xlib->lock = 0;
-#ifndef NDEBUG
+#ifdef DEBUG
xlib->sloppy_lock = (getenv("LIBXCB_ALLOW_SLOPPY_LOCK") != 0);
#endif
pthread_cond_init(&xlib->cond, 0);
diff --git a/src/xcb_util.c b/src/xcb_util.c
index dd2305a..3eacc0d 100644
--- a/src/xcb_util.c
+++ b/src/xcb_util.c
@@ -216,6 +216,7 @@ static int _xcb_open_tcp(char *host, char *protocol, const unsigned short port)
if (protocol && strcmp("tcp",protocol))
return -1;
+#ifdef AF_INET6
/* Allow IPv6 addresses enclosed in brackets. */
if(host[0] == '[' && (bracket = strrchr(host, ']')) && bracket[1] == '\0')
{
@@ -224,6 +225,7 @@ static int _xcb_open_tcp(char *host, char *protocol, const unsigned short port)
hints.ai_flags |= AI_NUMERICHOST;
hints.ai_family = AF_INET6;
}
+#endif
snprintf(service, sizeof(service), "%hu", port);
if(getaddrinfo(host, service, &hints, &results))
diff --git a/src/xcb_xlib.c b/src/xcb_xlib.c
index 1b573e8..22250f0 100644
--- a/src/xcb_xlib.c
+++ b/src/xcb_xlib.c
@@ -54,7 +54,7 @@ static void xcb_xlib_printbt(void)
#endif
}
-#ifndef NDEBUG
+#ifdef DEBUG
#define xcb_assert(c,x) do { if (!(x)) { xcb_xlib_printbt(); if (!(c)->xlib.sloppy_lock) assert(x); } } while(0)
#else
#define xcb_assert(c,x)