- Add a way to conditionally use the GCC stack protector.
Just add -DSTACK_PROTECTOR:BOOL=TRUE as argument to configure.cmd/sh
svn path=/trunk/; revision=64527
* Introduce an option to compile ReactOS with dwarf symbols instead of rossym. Use NO_ROSSYM to control it.
* Dedicated to V.
CORE-8594 #resolve
svn path=/trunk/; revision=64483
- add a way to enable "relay tracing" (à la wine) to modules.
This uses wine's TRACE routine, debug channel being "relay"
Use "WITH_RELAY" argument to cmake macro spec2def to activate.
svn path=/trunk/; revision=64281
- Use 0x00800000 as base address. This doesn't change anything (still loaded at 0x80800000) and it produces debug symbols that GDB can understand
[CMAKE]
- Get back to using DWARF2 symbols. They are a lot bigger, but at least they work
Now GDB can be used to source-level debug ntoskrnl.
svn path=/trunk/; revision=64128
- introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the GDB remote protocol together.
It is not fully functional, but for now it permits source-level debugging in some modules. More will be added as I feel the need and find the time to work a bit more on it. (That is, unless an angel comes and resume the work)
To use it, set GDB and _WINKD_ to TRUE in your CMakeCache.txt. Using separate debug symbols is also a good idea.
svn path=/trunk/; revision=64121
[CMAKE] Get rid of -Wtype-limits, it's noisy, it doesn't provide any reasonable benefit and it's almost impossible to "fix" these warnings without huge haxxory.
svn path=/trunk/; revision=63520
- Remove unnecessary allow_warnings throughout the code base
- Make -Wnarrowing an error unless excepted specifically (only done in explorer)
svn path=/trunk/; revision=62566
- GCC: Cosmetic changes only.
- MSVC:
* Cosmetic changes (the same as in GCC).
* Only VS 10+ resource compiler supports /nologo , therefore define a rc_nologo_flag that sets /nologo for VS 10+ rc.exe, and nothing for VS < 10.
CORE-6997 #comment Only VS10+ rc.exe supports /nologo, modify the fix in revision 62559.
CORE-8023
svn path=/trunk/; revision=62559
Use -ffat-lto-objects option for LTCG builds. GCC 4.9 now defaults
to slim LTO, which (owing to linker bug #13557) fails with undefined
reference errors.
[LWIP]
Compile with -fno-builtin-malloc -fno-builtin-free. GCC bug #56578.
svn path=/trunk/; revision=61266
Rewrite the code for generating def files. Remove useless switches. Seperate code for GCC and MSVC for easier maintainability. Make use of the new dlltool feature implemented by Kai Tietz, that allows to specify the name of an import/export. It is now possible to both export stdcall and fastcall decorated symbols as well as import from them.
svn path=/trunk/; revision=61024
* Add a flag (-s) to pass the source folder. This allows it to set the debug file paths relatively to that source folder. Brought to you by Arty.
[CMAKE]
* Leverage the new rsym flag. The rossym file paths are no longer absolute.
svn path=/trunk/; revision=59775
- Silence warnings. Using (unnecessary) virtual destructors here rather than final because that's what the 99 other classes already do.
svn path=/trunk/; revision=59535
- And here's finally a reason why we shouldn't use g++'s host-headers and libraries
- Switch back to wishy-washy-what's-a-standard mode for C++ globally, and enable C++11 only for netshell
svn path=/trunk/; revision=59534
[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.
svn path=/trunk/; revision=59505
- Add configure support for VS 2013
- Add a missing /nologo to assembler invocations
- Properly complain about old MSVC versions during configure instead of failing the build
svn path=/trunk/; revision=59488