radare2/libr/lang
2010-05-26 01:42:22 +02:00
..
p * Rename {r_*_handle_t, R*Handle} to {r_*_plugin_t, R*Plugin} 2010-05-26 01:42:22 +02:00
lang.c * Rename {r_*_handle_t, R*Handle} to {r_*_plugin_t, R*Plugin} 2010-05-26 01:42:22 +02:00
Makefile * Added w32dist makefile target to generate a distributable zip 2010-01-15 17:02:04 +01:00
README * Added anal_java plugin (copypasta from r1) 2010-05-23 14:31:18 +02:00

Language bindings
=================

Bindings should be generated automatically from vala or C.

The programs running in r_lang should need a better integration with the rest of libs.
This is: We need an api in r_lang to export a C symbol into the language namespace.

For example:

 r_lang_define(lang, "Core", "core", core);
 r_lang_define(lang, "Asm", "asm", asm)

This way the module instances can be shared between the core C application and many
r_lang supported language bindings (perk, python, ..)


TODO
====
* r_lang_define is implemented in lang.c, but requires the collaboration
  of the plugins to properly setup the environment for the script execution.

* Add support for STATIC_PLUGINS for r-Lang too

BUGS
====
dlerror(/usr/lib/radare2/lang_perl.so): libperl.so: cannot open shared object file: No such file or directory

This issue is fixed by setting LD_LIBRARY_PATH...looks like dlopen ignores rpath