On Sunday, 14 September 2014 at 14:37:05 UTC, Robert burner Schadek wrote:
use gtkd they have a cairo binding

Well, umm.. the fact is that I want to make my own lightweight cross-platform widget toolkit from scratch and a gtkd dependency is a big no-no.

On Sunday, 14 September 2014 at 14:45:49 UTC, evilrat wrote:
try adding CAIRO_HAS_XLIB_SURFACE version identifier in your dub project, may help with this problem(i mean cairoD from dub don't have configuration system so possibly you need to specify everything manually, hopefully you won't mess with source, just try different versions)

Variables like CAIRO_HAS_XLIB_SURFACE are platform specific, xlib and xcb surfaces are for linux, win32 and directfb surfaces are for windows and so on.. I will search in dubs documentation how can I specify this sort of variables but I have a gut feeling that running a pre-build script(rdmd ?) is the way of setting them such that they will work for everybody.

never heard deimos deprecated, dub and deimos has different purpose, dub is dependency tracking and build tool, deimos is just an "extension" to phobos containing only C-bindings(!).

I probably epressed myself in the wrong way but the ussage of dub is encouraged and I've seen many deimos libraries being moved to dubs registry(ctrl+F for "deimos" in http://code.dlang.org/ ), one of them being libX11.The package maintainer of libX11 said in the project description and I quote:

"This repository is a clone of the Deimos X11 repository. I've purposely not forked because the overall structure has been changed to suit the dub build tool. Hopefully this is a temporary measure until the entirety of Deimos is moved to dub."

I don't see the point of maintaining two versions of the same library, especially for a small comunity like D users.

either use deimos only(both x11 and cairo), or possibly you will need to update(?) dub cairoD to use deimos x11. the problem with this is that cairoD looks abandoned, it will possibly require to maintain your own fork of it if start using it.

If you look at deimos.cairo you will see that the latest commit was made 2 years ago while cairoD was last updated 6 months ago. I made my choice: I will stick to dub, fork cairoD, merge everything from deimos.cairo into cairoDs C-style bindings & wrappers, update cairoDs dependencies to use dub pkgs and then provide and rdmd script to configure platform specific stuff. I have plenty of time and if I succed, everyone can benefit from my work. :)

Reply via email to