<br><br><div><span class="gmail_quote">On 10/27/06, <b class="gmail_sendername">Josh Triplett</b> <<a href="mailto:josh@freedesktop.org">josh@freedesktop.org</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Yang JianJun wrote:<br>> I have ported libXft and Pango to XCB backend, It works well now.<br>> For some reasons I picked Pango-1.8 which use Xft for rendering instead of<br>> cairo. I removed pangox backend in pango, just use pangoxft which build
<br>> directly on the lates XCB.<br>> The default backend of libXft is X11 ,the configure option is<br>> "--enable-xcb" if you want to use the XCB backend.The same as xft, pango<br>> also use "--enable-xcb" to enable pangoxft to build on XCB. In addition,
<br>> some Xlib functions in Xft have not ported yet,includes XGetDefault and<br>> XRenderQuerySubpixelOrder. I just hard-code the default values.<br>> All my work is available from<br>> <a href="http://svn.sourceforge.net/viewvc/gtk-xcb/">
http://svn.sourceforge.net/viewvc/gtk-xcb/</a>. Have a look at that and let me<br>> know if you have more questions.<br>> Any suggestion is welcome, thanks!<br><br>Wow. Thanks for working on this!<br><br>I took a look at your Xft port, and tried to get it working on my system. I
<br>ran into a few issues:<br><br>* When I try to build libXft, I hit a compilation error:<br><br>
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/freetype2
-I/tmp/xcb-util-inst/include -Wall -Wpointer-arith -Wstrict-prototypes
-Wmissing-prototypes -Wmissing-declarations -Wnested-externs
-fno-strict-aliasing -I../include/xcb/Xft -g -O2 -MT xftdpy-xcb.lo -MD
-MP -MF .deps/xftdpy-xcb.Tpo -c xftdpy-xcb.c -fPIC -DPIC -o
.libs/xftdpy-xcb.o<br>xftdpy-xcb.c: In function '_XftDisplayInfoGet':<br>xftdpy-xcb.c:152: error: 'XCB_PICT_FORMAT_TYPE' undeclared (first use in this function)<br>xftdpy-xcb.c:152: error: (Each undeclared identifier is reported only once
<br>xftdpy-xcb.c:152: error: for each function it appears in.)<br>xftdpy-xcb.c:152: error: 'XCB_PICT_FORMAT_DEPTH' undeclared (first use in this function)<br>xftdpy-xcb.c:153: error: 'XCB_PICT_FORMAT_RED_MASK' undeclared (first use in this function)
<br>xftdpy-xcb.c:153: error: 'XCB_PICT_FORMAT_GREEN_MASK' undeclared (first use in this function)<br>xftdpy-xcb.c:154: error: 'XCB_PICT_FORMAT_BLUE_MASK' undeclared (first use in this function)<br>xftdpy-xcb.c:154: error: 'XCB_PICT_FORMAT_ALPHA_MASK' undeclared (first use in this function)
<br><br>* I think libpixman has actually become deprecated, though I don't know the<br> suggested replacement offhand. (Possibly this got folded into cairo.)</blockquote><div><br>
No,these errors have nothing to do with libpixman, just because your
xcb-util library is a little old. xcb-util has update for "Rename
enumerations to coding standard", you should get the latest xcb-util.
XCB_PICT_FORMAT_* now defines in xcb_renderutil.h. Can you run it then? <br>
</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">* You didn't have the Xorg macros on your system when you autotooled libXft,<br> so the XORG_RELEASE_VERSION macro didn't get expanded, and ends up in the
<br> configure script, which tries to execute it as a shell command.</blockquote><div><br>
correct. But it doesnt block the building without that macro. <br>
</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">* Going along with the previous: you checked generated files like configure<br> into your subversion repository. In general, you don't want to do that;
<br> people who pull straight from version control should run ./autogen.sh.<br><br><br>We definitely welcome ports of key libraries like Xft and Pango to XCB. You<br>may want to request an account on <a href="http://freedesktop.org">
freedesktop.org</a>, so that you could work on<br>libXft there; see <a href="http://www.freedesktop.org/wiki/AccountRequests">http://www.freedesktop.org/wiki/AccountRequests</a> for details.<br>Do you have any experience with the git version control system? libXft has a
<br>git repository on <a href="http://freedesktop.org">freedesktop.org</a>, and you could easily create a new libXft<br>git repository for XCB porting work, which would make it easy to merge back in<br>when ready.</blockquote>
<div><br>
yeah, i should work on that repository.</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Thanks,<br>Josh Triplett<br><br><br><br>
</blockquote></div><br>