eqqlyz / boomerang

Boomerang Decompiler - Fighting the code-rot :)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Welcome to boomerang decompiler

Join the chat at https://gitter.im/nemerle/boomerang

This repository is now connected to continous integration server: http://jenkins.nemerle.eu Generated documentation is available at http://jenkins.nemerle.eu/job/boomerang/doxygen/

This is an experimental branch of boomerang project, the inital goals are:

  1. Try to fix all warnings from GCC and Clang's -Wall
  2. Verify stability of decompilation results: compare 2 run results, they should be exactly the same.
  3. Simplify code base using features available in c++11

Considering part 3, the target compilers are GCC >=4.6 family (MinGW on windows), Clang and MSVC>=2015.

For full ( and slightly stale :) ) build instructions please see

Compiling the next branch

Note that on a debian system you can usually get away with:

sudo apt-get install git cmake qt5-default
cd YOUR_FAVOURITE_DEVELOPMENT_DIRECTORY
git clone git://github.com/nemerle/boomerang.git
cd boomerang
mkdir build && cd build
cmake ..
make

To compile on windows, it should be enough to have:

Testing

After building boomerang You can run the test suite, to do that you will need ruby interpeter and a bash compatible shell.

  ./full_regression.sh

After running full_regression, the tool will report tests on which boomerang crashed. You can also check if Your changes to boomerang, produced any changes in the quality of decompiled code by running YOUR_FAVOURITE_DIFF_GUI ./tests/outputs ./tests/baseline

Additionally, if You enable the test suite option in ( CMake option ), boomerang unit-test can be run by

make test

Thanks.

About

Boomerang Decompiler - Fighting the code-rot :)

License:Other


Languages

Language:C++ 78.9%Language:C 11.4%Language:Objective-C 3.9%Language:Ruby 2.4%Language:MATLAB 1.4%Language:Yacc 0.7%Language:CMake 0.3%Language:Lex 0.2%Language:Assembly 0.2%Language:Max 0.2%Language:Python 0.2%Language:Shell 0.1%Language:Haskell 0.1%Language:XSLT 0.1%Language:Perl 6 0.0%Language:Fortran 0.0%Language:TypeScript 0.0%