[Xcb] porting Xft and pango to XCB

Yang JianJun supermaper at gmail.com
Fri Oct 27 02:20:14 PDT 2006


On 10/27/06, Josh Triplett <josh at freedesktop.org> wrote:
>
> Yang JianJun wrote:
> >         I have ported libXft and Pango to XCB backend, It works well
> now.
> > For some reasons I picked Pango-1.8 which use Xft for rendering instead
> of
> > cairo. I removed pangox backend in pango, just use pangoxft which build
> > directly on the lates XCB.
> >         The default backend of libXft is X11 ,the configure option is
> > "--enable-xcb" if you want to use the XCB backend.The same as xft, pango
> > also use "--enable-xcb" to enable pangoxft to build on XCB. In addition,
> > some Xlib functions in Xft have not ported yet,includes XGetDefault and
> > XRenderQuerySubpixelOrder. I just hard-code the default values.
> >         All my work is available from
> > http://svn.sourceforge.net/viewvc/gtk-xcb/. Have a look at that and let
> me
> > know if you have more questions.
> >         Any suggestion is welcome, thanks!
>
> Wow.  Thanks for working on this!
>
> I took a look at your Xft port, and tried to get it working on my
> system.  I
> ran into a few issues:
>
> * When I try to build libXft, I hit a compilation error:
>
> 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
> xftdpy-xcb.c: In function '_XftDisplayInfoGet':
> xftdpy-xcb.c:152: error: 'XCB_PICT_FORMAT_TYPE' undeclared (first use in
> this function)
> xftdpy-xcb.c:152: error: (Each undeclared identifier is reported only once
> xftdpy-xcb.c:152: error: for each function it appears in.)
> xftdpy-xcb.c:152: error: 'XCB_PICT_FORMAT_DEPTH' undeclared (first use in
> this function)
> xftdpy-xcb.c:153: error: 'XCB_PICT_FORMAT_RED_MASK' undeclared (first use
> in this function)
> xftdpy-xcb.c:153: error: 'XCB_PICT_FORMAT_GREEN_MASK' undeclared (first
> use in this function)
> xftdpy-xcb.c:154: error: 'XCB_PICT_FORMAT_BLUE_MASK' undeclared (first use
> in this function)
> xftdpy-xcb.c:154: error: 'XCB_PICT_FORMAT_ALPHA_MASK' undeclared (first
> use in this function)
>
> * I think libpixman has actually become deprecated, though I don't know
> the
>   suggested replacement offhand.  (Possibly this got folded into cairo.)


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?

* You didn't have the Xorg macros on your system when you autotooled libXft,
>   so the XORG_RELEASE_VERSION macro didn't get expanded, and ends up in
> the
>   configure script, which tries to execute it as a shell command.


correct. But it doesnt block the building without that macro.

* Going along with the previous: you checked generated files like configure
>   into your subversion repository.  In general, you don't want to do that;
>   people who pull straight from version control should run ./autogen.sh.
>
>
> We definitely welcome ports of key libraries like Xft and Pango to
> XCB.  You
> may want to request an account on freedesktop.org, so that you could work
> on
> libXft there; see http://www.freedesktop.org/wiki/AccountRequests for
> details.
> Do you have any experience with the git version control system?  libXft
> has a
> git repository on freedesktop.org, and you could easily create a new
> libXft
> git repository for XCB porting work, which would make it easy to merge
> back in
> when ready.


yeah, i  should  work on that repository.

Thanks,
> Josh Triplett
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freedesktop.org/archives/xcb/attachments/20061027/e31bd644/attachment.html


More information about the Xcb mailing list