radare2/libr
pancake dab6dacf50 * Refactoring of the r_print module
- State-aware now
  - Sync examples and r_core
2009-03-11 11:42:11 +00:00
..
anal * fix r_asm and r_anal deps 2009-03-04 12:39:51 +00:00
asm * Several fixups 2009-03-10 12:21:46 +01:00
bin * r_bin 2009-03-11 01:11:50 +01:00
bp * Initial import of libr 2009-02-05 22:08:46 +01:00
cmd * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
config * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
cons * Add 'dist' and 'shot' make targets 2009-03-05 13:15:28 +01:00
core * Refactoring of the r_print module 2009-03-11 11:42:11 +00:00
debug * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
diff * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
flags * Fix generation and installation of the libr.pc pkg-config file 2009-03-09 13:08:53 +00:00
hash * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
include * Refactoring of the r_print module 2009-03-11 11:42:11 +00:00
io * Fixed r_reg build 2009-02-20 14:43:59 +01:00
lang * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
lib * Initial fixup for default LIBR_PLUGINS on installed r_lib 2009-03-10 21:58:00 +00:00
line * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
macro * Initial import of libr 2009-02-05 22:08:46 +01:00
meta * Added dummy xrefs 2009-02-16 11:24:45 +01:00
parse * r_bin 2009-03-08 18:29:21 +01:00
print * Refactoring of the r_print module 2009-03-11 11:42:11 +00:00
range * Added dummy xrefs 2009-02-16 11:24:45 +01:00
reg * Fixed r_reg build 2009-02-20 14:43:59 +01:00
search * Several fixups 2009-03-10 12:21:46 +01:00
sign * Add random documentation for dynamic language plugins 2009-03-10 01:49:24 +00:00
socket * Add non-block socket support for Windows(R) platform 2009-03-09 16:54:57 +01:00
syscall * Add random documentation for dynamic language plugins 2009-03-10 01:49:24 +00:00
trace * Oops. fix ruby plugin build 2009-02-12 15:47:13 -08:00
util * Initial fixup for default LIBR_PLUGINS on installed r_lib 2009-03-10 21:58:00 +00:00
vapi * Add random documentation for dynamic language plugins 2009-03-10 01:49:24 +00:00
var * Fix lot of warning messages 2009-03-06 00:00:41 +00:00
vm * Lot of random work on multiple fronts 2009-02-17 00:09:40 +01:00
config.h * Add random documentation for dynamic language plugins 2009-03-10 01:49:24 +00:00
config.mk * Initial fixup for default LIBR_PLUGINS on installed r_lib 2009-03-10 21:58:00 +00:00
depgraph.pl * fix r_asm and r_anal deps 2009-03-04 12:39:51 +00:00
libr.pc.acr * Add random documentation for dynamic language plugins 2009-03-10 01:49:24 +00:00
Makefile * Several fixups 2009-03-10 12:21:46 +01:00
README * Add random documentation for dynamic language plugins 2009-03-10 01:49:24 +00:00
rules.mk * Initial fixup for default LIBR_PLUGINS on installed r_lib 2009-03-10 21:58:00 +00:00
stripsyms.sh * Initial import of libr 2009-02-05 22:08:46 +01:00
TODO * Initial fixup for default LIBR_PLUGINS on installed r_lib 2009-03-10 21:58:00 +00:00

  =========================
  libr - codename 'radare2'
  =========================

LibR is the refactoring of the old radare1 core in a set of libraries
defining the APIs of radare2.

The library 'libr' is composed by different modules, each one implementing
working modules of radare, so then, we get a complete set of libraries for
analyzing code, disassembling bytes, dumping bytes, plugin handling, etc..

The 'R' is for refactoring, reversing, radare, ...

Each module has its own test directory (t/) which contains simple applications
using the upper directory code and linking against the direct dependencies.

Each mode can own a plugin directory (p/) that contains extensions for the
parent library module (libr/asm/p/asm_x86).

There's also the possibility to define a list of static plugins to be built
inside the parent module. This way you can avoid some flexibility to ease
portability and build single binaries with some embedded features.

The library can be used from 'pkg-config', this way you can easy build an
application or plugin that links against libr or just few elements of it.

This enables a fine-grained test level for checking all functionalities in
one shot and give us the opportunity to write radare2 as test programs.

  --pancake