1 %bcond_with flex_bison_c++
2 Summary: An attempt at a general, open source, retargetable decompiler of native executable files
4 Version: 0.0.0.20040707
7 Group: Development/Languages
8 Source0: %{name}.tar.gz
9 # Source0-md5: 97d2b1825b3e2d5bcd85df48eb15a45e
10 URL: http://boomerang.sourceforge.net/
11 %if %{with flex_bison_c++}
12 BuildRequires: bison++
15 BuildRequires: gc-devel
16 BuildRequires: cppunit-devel
17 BuildRequires: expat-devel
18 BuildRequires: libstdc++-devel
19 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
22 An attempt to develop a real decompiler through the open source
23 community. A decompiler takes as input an executable file, and
24 attempts to create a high level, compilable, even maintainable source
25 file that does the same thing. It is therefore the opposite of a
26 compiler, which of course takes a source file and makes an executable.
27 It won't of course recreate the original source file; probably nothing
28 like it. It does not matter if the executable file has symbols or not,
29 or was compiled from any particular language. (However, languages like
30 ML that are usually interpreted are not considered.)
32 The intent is to create a retargetable decompiler (i.e. one that can
33 work with different types of input executable files with modest
34 effort, e.g. X86-windows, sparc-solaris, etc). It will be highly
35 modular, so that different parts of the decompiler can be replaced
36 with experimental modules. It is intended to eventually become
37 interactive, a la IDA Pro, because some things (not just variable
38 names and comments, though these are obviously very important) require
47 ln -s %{_includedir}/cppunit include/cppunit
50 %if ! %{with flex_bison_c++}
55 C="%{__cc} %{rpmcflags} -I%{_includedir}/gc" \
56 CC="%{__cxx} %{rpmcflags} -I%{_includedir}/gc"
59 rm -rf $RPM_BUILD_ROOT
60 install -d $RPM_BUILD_ROOT{%{_libdir},%{_datadir}/%{name},%{_bindir}}
62 install %{name} $RPM_BUILD_ROOT%{_bindir}
63 cp -a signatures transformations $RPM_BUILD_ROOT%{_datadir}/%{name}
64 cp -a lib $RPM_BUILD_ROOT%{_libdir}/%{name}
67 rm -rf $RPM_BUILD_ROOT
70 %defattr(644,root,root,755)
71 %attr(755,root,root) %{_bindir}/*
73 %dir %{_libdir}/%{name}
74 %attr(755,root,root) %{_libdir}/%{name}/*.so