Author: akhaldi
Date: Thu Jul 18 21:03:01 2013
New Revision: 59505
URL:
http://svn.reactos.org/svn/reactos?rev=59505&view=rev
Log:
* Improve the way we create rossym debug info. The effort results in ~85% *smaller* build
folder with ninja all with no code changes.
[DBGHELPHOST]
* Introduce a self-contained, static library version of dbghelp, in order to leverage its
PE DWARF support. Thanks to Jerome Gardou for his work on the compatibility layer, and to
Thomas Faber for helping me with the review/improvements.
* Unify the new host lib with the existing dll codebase using preprocessor conditions.
This prevents code duplication.
* Skip as much unneeded functionality as possible when compiling dbghelphost to keep it
light and straight to the point.
[RSYM]
* Introduce the required functions that allow parsing DWARF (using dbghelphost) and using
it (along with coff symbols) to create the rossym debug info. Brought to you by Awesome
Arty with some bugfixes from Jerome Gardou. Many thanks to Thomas Faber for assisting me
with the testing/bug hunting.
[CMAKE/GCC]
* Introduce a combination of dwarf and debug emission flags that ensure the smallest debug
info size among all the possible options we have.
* Introduce compressed debug sections that I already included the support for in RosBE
2.1. Thanks to the mingw-w64 folks (Kai Tietz) for the patch.
* Don't compress debug sections of C++ modules for now due to a bug in the toolchain
that leads to spamming the build at link time with a warning.
* Don't run rsym on the RC shared libraries. Thanks to Thomas Faber for spotting
this.
[DBGHELP]
* Update the ros diff to reflect the changes introduced by the dbghelphost unification.
Added:
trunk/reactos/dll/win32/dbghelp/compat.c (with props)
trunk/reactos/dll/win32/dbghelp/compat.h (with props)
trunk/reactos/include/host/wine/mscvpdb.h (with props)
trunk/reactos/include/host/wine/rbtree.h (with props)
Modified:
trunk/reactos/CMakeLists.txt
trunk/reactos/cmake/gcc.cmake
trunk/reactos/dll/win32/dbghelp/CMakeLists.txt
trunk/reactos/dll/win32/dbghelp/cpu_i386.c
trunk/reactos/dll/win32/dbghelp/dbghelp.c
trunk/reactos/dll/win32/dbghelp/dbghelp_private.h
trunk/reactos/dll/win32/dbghelp/dbghelp_ros.diff
trunk/reactos/dll/win32/dbghelp/dwarf.c
trunk/reactos/dll/win32/dbghelp/dwarf.h
trunk/reactos/dll/win32/dbghelp/image_private.h
trunk/reactos/dll/win32/dbghelp/module.c
trunk/reactos/dll/win32/dbghelp/pe_module.c
trunk/reactos/dll/win32/dbghelp/source.c
trunk/reactos/dll/win32/dbghelp/stabs.c
trunk/reactos/dll/win32/dbghelp/storage.c
trunk/reactos/dll/win32/dbghelp/symbol.c
trunk/reactos/dll/win32/dbghelp/type.c
trunk/reactos/include/host/config.h
trunk/reactos/include/host/typedefs.h
trunk/reactos/tools/obj2bin/obj2bin.c
trunk/reactos/tools/pecoff.h
trunk/reactos/tools/rsym/CMakeLists.txt
trunk/reactos/tools/rsym/rsym.c
trunk/reactos/tools/rsym/rsym.h
[This mail would be too long, it was shortened to contain the URLs only.]
Modified: trunk/reactos/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/CMakeLists.txt?rev=59505&a…
Modified: trunk/reactos/cmake/gcc.cmake
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/gcc.cmake?rev=59505&…
Modified: trunk/reactos/dll/win32/dbghelp/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/CMakeLis…
Added: trunk/reactos/dll/win32/dbghelp/compat.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/compat.c…
Added: trunk/reactos/dll/win32/dbghelp/compat.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/compat.h…
Modified: trunk/reactos/dll/win32/dbghelp/cpu_i386.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/cpu_i386…
Modified: trunk/reactos/dll/win32/dbghelp/dbghelp.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/dbghelp.…
Modified: trunk/reactos/dll/win32/dbghelp/dbghelp_private.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/dbghelp_…
Modified: trunk/reactos/dll/win32/dbghelp/dbghelp_ros.diff
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/dbghelp_…
Modified: trunk/reactos/dll/win32/dbghelp/dwarf.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/dwarf.c?…
Modified: trunk/reactos/dll/win32/dbghelp/dwarf.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/dwarf.h?…
Modified: trunk/reactos/dll/win32/dbghelp/image_private.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/image_pr…
Modified: trunk/reactos/dll/win32/dbghelp/module.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/module.c…
Modified: trunk/reactos/dll/win32/dbghelp/pe_module.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/pe_modul…
Modified: trunk/reactos/dll/win32/dbghelp/source.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/source.c…
Modified: trunk/reactos/dll/win32/dbghelp/stabs.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/stabs.c?…
Modified: trunk/reactos/dll/win32/dbghelp/storage.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/storage.…
Modified: trunk/reactos/dll/win32/dbghelp/symbol.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/symbol.c…
Modified: trunk/reactos/dll/win32/dbghelp/type.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/dbghelp/type.c?r…
Modified: trunk/reactos/include/host/config.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/host/config.h?rev=…
Modified: trunk/reactos/include/host/typedefs.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/host/typedefs.h?re…
Added: trunk/reactos/include/host/wine/mscvpdb.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/host/wine/mscvpdb.…
Added: trunk/reactos/include/host/wine/rbtree.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/host/wine/rbtree.h…
Modified: trunk/reactos/tools/obj2bin/obj2bin.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/obj2bin/obj2bin.c?re…
Modified: trunk/reactos/tools/pecoff.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/pecoff.h?rev=59505&a…
Modified: trunk/reactos/tools/rsym/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rsym/CMakeLists.txt?…
Modified: trunk/reactos/tools/rsym/rsym.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rsym/rsym.c?rev=5950…
Modified: trunk/reactos/tools/rsym/rsym.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rsym/rsym.h?rev=5950…