On Saturday, 23 March 2013 at 08:53:47 UTC, Jens Mueller wrote:
Moritz Maxeiner wrote:
I could add support for it via a version flag. E.g. set
-version=DEIMOS_LLVM or something similar. That way someone
using
llvm-d can choose to either use the included C bindings or use
your
deimos compatible ones. My only concern would be that the LLVM
C
function signatures would have to be translated in the same,
or at
least a compatible way in both my C bindings and the deimos
ones, so
using either of them would just be a matter of which import
statement to use.
Since I've translated them pretty much strictly according to
the
"interfacing with c" guideline that's probably the case
already, but
I'd have to try it out first.
I would like that. Probably the signatures are already the
same. There
is not much freedom when translating them.
I've updated llvm-d to do just that. When compiling with
-version=DEIMOS_LLVM the D API will import the deimos-llvm
bindings instead of llvm-d's own ones. I've not yet tested it
fully, but it should work. One thing, though: Your
https://github.com/jkm/deimos-llvm/blob/master/deimos/llvm/c/executionengine.d
should also have executionengine as the module name, not
enhanceddisassembly.
-Moritz