mirror of
https://github.com/reactos/reactos.git
synced 2025-06-10 20:34:59 +00:00
[CMAKE]
* Temporarily go back to using the ret^H^H^H previous way of using debug info. Build will, for example, be slower, take double the disk space it needs right now, but... * Introduce __ROS_DWARF__ for the meaning __ROS_CMAKE__ implied previously. svn path=/trunk/; revision=54055
This commit is contained in:
parent
0fa1475dfd
commit
41fe0a5043
12 changed files with 55 additions and 44 deletions
|
@ -61,7 +61,7 @@ if(NOT CMAKE_CROSSCOMPILING)
|
||||||
add_subdirectory(lib)
|
add_subdirectory(lib)
|
||||||
|
|
||||||
if(NOT MSVC)
|
if(NOT MSVC)
|
||||||
export(TARGETS widl wrc gendib cabman cdmake mkhive obj2bin spec2def geninc FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
export(TARGETS widl wrc gendib cabman cdmake mkhive obj2bin spec2def geninc rsym FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
||||||
else()
|
else()
|
||||||
export(TARGETS gendib cabman cdmake mkhive obj2bin spec2def geninc FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
export(TARGETS gendib cabman cdmake mkhive obj2bin spec2def geninc FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -8,7 +8,8 @@ endif()
|
||||||
add_compile_flags("-pipe -fms-extensions")
|
add_compile_flags("-pipe -fms-extensions")
|
||||||
|
|
||||||
# Debugging (Note: DWARF-4 on 4.5.1 when we ship)
|
# Debugging (Note: DWARF-4 on 4.5.1 when we ship)
|
||||||
add_compile_flags("-gdwarf-2 -g2 -femit-struct-debug-detailed=none -feliminate-unused-debug-types")
|
# add_compile_flags("-gdwarf-2 -g2 -femit-struct-debug-detailed=none -feliminate-unused-debug-types")
|
||||||
|
add_compile_flags("-gstabs+")
|
||||||
|
|
||||||
# Do not allow warnings
|
# Do not allow warnings
|
||||||
add_compile_flags("-Werror")
|
add_compile_flags("-Werror")
|
||||||
|
@ -87,17 +88,29 @@ endif()
|
||||||
|
|
||||||
link_directories(${REACTOS_BINARY_DIR}/lib/sdk/crt)
|
link_directories(${REACTOS_BINARY_DIR}/lib/sdk/crt)
|
||||||
|
|
||||||
set(CMAKE_C_LINK_EXECUTABLE "<CMAKE_C_COMPILER> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
|
get_target_property(RSYM native-rsym IMPORTED_LOCATION_NOCONFIG)
|
||||||
|
|
||||||
set(CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_CXX_COMPILER> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>")
|
set(CMAKE_C_LINK_EXECUTABLE
|
||||||
|
"<CMAKE_C_COMPILER> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>"
|
||||||
|
"${RSYM} <TARGET> <TARGET>")
|
||||||
|
|
||||||
|
set(CMAKE_CXX_LINK_EXECUTABLE
|
||||||
|
"<CMAKE_CXX_COMPILER> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>"
|
||||||
|
"${RSYM} <TARGET> <TARGET>")
|
||||||
|
|
||||||
set(CMAKE_EXE_LINKER_FLAGS "-nostdlib -Wl,--enable-auto-image-base,--disable-auto-import,--disable-stdcall-fixup")
|
set(CMAKE_EXE_LINKER_FLAGS "-nostdlib -Wl,--enable-auto-image-base,--disable-auto-import,--disable-stdcall-fixup")
|
||||||
|
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS_INIT} -Wl,--disable-stdcall-fixup")
|
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS_INIT} -Wl,--disable-stdcall-fixup")
|
||||||
|
|
||||||
set(CMAKE_C_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
|
set(CMAKE_C_CREATE_SHARED_LIBRARY
|
||||||
set(CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
|
"<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>"
|
||||||
set(CMAKE_RC_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
|
"${RSYM} <TARGET> <TARGET>")
|
||||||
|
set(CMAKE_CXX_CREATE_SHARED_LIBRARY
|
||||||
|
"<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>"
|
||||||
|
"${RSYM} <TARGET> <TARGET>")
|
||||||
|
set(CMAKE_RC_CREATE_SHARED_LIBRARY
|
||||||
|
"<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_C_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>"
|
||||||
|
"${RSYM} <TARGET> <TARGET>")
|
||||||
|
|
||||||
SET(CMAKE_C_COMPILE_OBJECT "${CCACHE} <CMAKE_C_COMPILER> <DEFINES> <FLAGS> -o <OBJECT> -c <SOURCE>")
|
SET(CMAKE_C_COMPILE_OBJECT "${CCACHE} <CMAKE_C_COMPILER> <DEFINES> <FLAGS> -o <OBJECT> -c <SOURCE>")
|
||||||
SET(CMAKE_CXX_COMPILE_OBJECT "${CCACHE} <CMAKE_CXX_COMPILER> <DEFINES> <FLAGS> -o <OBJECT> -c <SOURCE>")
|
SET(CMAKE_CXX_COMPILE_OBJECT "${CCACHE} <CMAKE_CXX_COMPILER> <DEFINES> <FLAGS> -o <OBJECT> -c <SOURCE>")
|
||||||
|
|
|
@ -110,7 +110,7 @@ typedef struct _ROSSYM_CALLBACKS {
|
||||||
BOOLEAN (*MemGetProc)(PVOID FileContext, ULONG_PTR *Target, PVOID SourceMem, ULONG Size);
|
BOOLEAN (*MemGetProc)(PVOID FileContext, ULONG_PTR *Target, PVOID SourceMem, ULONG Size);
|
||||||
} ROSSYM_CALLBACKS, *PROSSYM_CALLBACKS;
|
} ROSSYM_CALLBACKS, *PROSSYM_CALLBACKS;
|
||||||
|
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
typedef struct _ROSSYM_OWN_FILECONTEXT {
|
typedef struct _ROSSYM_OWN_FILECONTEXT {
|
||||||
BOOLEAN (*ReadFileProc)(PVOID FileContext, PVOID Buffer, ULONG Size);
|
BOOLEAN (*ReadFileProc)(PVOID FileContext, PVOID Buffer, ULONG Size);
|
||||||
BOOLEAN (*SeekFileProc)(PVOID FileContext, ULONG_PTR Position);
|
BOOLEAN (*SeekFileProc)(PVOID FileContext, ULONG_PTR Position);
|
||||||
|
@ -123,7 +123,7 @@ typedef struct _ROSSYM_INFO *PROSSYM_INFO;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
VOID RosSymInit(PROSSYM_CALLBACKS Callbacks);
|
VOID RosSymInit(PROSSYM_CALLBACKS Callbacks);
|
||||||
#ifndef __ROS_CMAKE__
|
#ifndef __ROS_DWARF__
|
||||||
VOID RosSymInitKernelMode(VOID);
|
VOID RosSymInitKernelMode(VOID);
|
||||||
#endif
|
#endif
|
||||||
VOID RosSymInitUserMode(VOID);
|
VOID RosSymInitUserMode(VOID);
|
||||||
|
@ -135,7 +135,7 @@ BOOLEAN RosSymCreateFromMem(PVOID ImageStart, ULONG_PTR ImageSize,
|
||||||
BOOLEAN RosSymCreateFromFile(PVOID FileContext, PROSSYM_INFO *RosSymInfo);
|
BOOLEAN RosSymCreateFromFile(PVOID FileContext, PROSSYM_INFO *RosSymInfo);
|
||||||
ULONG RosSymGetRawDataLength(PROSSYM_INFO RosSymInfo);
|
ULONG RosSymGetRawDataLength(PROSSYM_INFO RosSymInfo);
|
||||||
VOID RosSymGetRawData(PROSSYM_INFO RosSymInfo, PVOID RawData);
|
VOID RosSymGetRawData(PROSSYM_INFO RosSymInfo, PVOID RawData);
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
BOOLEAN RosSymGetAddressInformation(PROSSYM_INFO RosSymInfo,
|
BOOLEAN RosSymGetAddressInformation(PROSSYM_INFO RosSymInfo,
|
||||||
ULONG_PTR RelativeAddress,
|
ULONG_PTR RelativeAddress,
|
||||||
PROSSYM_LINEINFO RosSymLineInfo);
|
PROSSYM_LINEINFO RosSymLineInfo);
|
||||||
|
|
|
@ -15,7 +15,7 @@ add_subdirectory(lsalib)
|
||||||
add_subdirectory(ppcmmu)
|
add_subdirectory(ppcmmu)
|
||||||
add_subdirectory(pseh)
|
add_subdirectory(pseh)
|
||||||
add_subdirectory(recyclebin)
|
add_subdirectory(recyclebin)
|
||||||
add_subdirectory(rossym_new)
|
add_subdirectory(rossym)
|
||||||
add_subdirectory(rtl)
|
add_subdirectory(rtl)
|
||||||
add_subdirectory(sdk)
|
add_subdirectory(sdk)
|
||||||
add_subdirectory(smlib)
|
add_subdirectory(smlib)
|
||||||
|
|
|
@ -5,22 +5,14 @@ else()
|
||||||
add_definitions(-D_NTSYSTEM_)
|
add_definitions(-D_NTSYSTEM_)
|
||||||
list(APPEND SOURCE
|
list(APPEND SOURCE
|
||||||
delete.c
|
delete.c
|
||||||
dwarf386.c
|
|
||||||
dwarfabbrev.c
|
|
||||||
dwarfaranges.c
|
|
||||||
dwarfcfa.c
|
|
||||||
dwarfinfo.c
|
|
||||||
dwarfget.c
|
|
||||||
dwarfopen.c
|
|
||||||
dwarfpc.c
|
|
||||||
dwarfpubnames.c
|
|
||||||
find.c
|
find.c
|
||||||
fromfile.c
|
fromfile.c
|
||||||
iofile.c
|
frommem.c
|
||||||
|
fromraw.c
|
||||||
|
getraw.c
|
||||||
init.c
|
init.c
|
||||||
initkm.c
|
initkm.c
|
||||||
initum.c
|
initum.c
|
||||||
pe.c
|
|
||||||
zwfile.c)
|
zwfile.c)
|
||||||
add_library(rossym ${SOURCE})
|
add_library(rossym ${SOURCE})
|
||||||
add_dependencies(rossym psdk bugcodes)
|
add_dependencies(rossym psdk bugcodes)
|
||||||
|
|
|
@ -389,7 +389,8 @@ if(NOT _WINKD_)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(DBG OR KDBG)
|
if(DBG OR KDBG)
|
||||||
list(APPEND SOURCE kdbg/kdb_symbols.cmake.c)
|
#list(APPEND SOURCE kdbg/kdb_symbols.cmake.c)
|
||||||
|
list(APPEND SOURCE kdbg/kdb_symbols.c)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
list(APPEND SOURCE
|
list(APPEND SOURCE
|
||||||
|
|
6
reactos/ntoskrnl/cache/section/io.c
vendored
6
reactos/ntoskrnl/cache/section/io.c
vendored
|
@ -100,7 +100,7 @@ MiSimpleRead
|
||||||
PLARGE_INTEGER FileOffset,
|
PLARGE_INTEGER FileOffset,
|
||||||
PVOID Buffer,
|
PVOID Buffer,
|
||||||
ULONG Length,
|
ULONG Length,
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
BOOLEAN Paging,
|
BOOLEAN Paging,
|
||||||
#endif
|
#endif
|
||||||
PIO_STATUS_BLOCK ReadStatus)
|
PIO_STATUS_BLOCK ReadStatus)
|
||||||
|
@ -145,7 +145,7 @@ MiSimpleRead
|
||||||
return STATUS_NO_MEMORY;
|
return STATUS_NO_MEMORY;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef __ROS_CMAKE__
|
#ifndef __ROS_DWARF__
|
||||||
Irp->Flags |= IRP_PAGING_IO | IRP_SYNCHRONOUS_PAGING_IO | IRP_NOCACHE | IRP_SYNCHRONOUS_API;
|
Irp->Flags |= IRP_PAGING_IO | IRP_SYNCHRONOUS_PAGING_IO | IRP_NOCACHE | IRP_SYNCHRONOUS_API;
|
||||||
#else
|
#else
|
||||||
Irp->Flags |= (Paging ? IRP_PAGING_IO | IRP_SYNCHRONOUS_PAGING_IO | IRP_NOCACHE : 0) | IRP_SYNCHRONOUS_API;
|
Irp->Flags |= (Paging ? IRP_PAGING_IO | IRP_SYNCHRONOUS_PAGING_IO | IRP_NOCACHE : 0) | IRP_SYNCHRONOUS_API;
|
||||||
|
@ -159,7 +159,7 @@ MiSimpleRead
|
||||||
IrpSp->FileObject = FileObject;
|
IrpSp->FileObject = FileObject;
|
||||||
IrpSp->CompletionRoutine = MiSimpleReadComplete;
|
IrpSp->CompletionRoutine = MiSimpleReadComplete;
|
||||||
|
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
ObReferenceObject(FileObject);
|
ObReferenceObject(FileObject);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
2
reactos/ntoskrnl/cache/section/newmm.h
vendored
2
reactos/ntoskrnl/cache/section/newmm.h
vendored
|
@ -181,7 +181,7 @@ MiSimpleRead
|
||||||
PLARGE_INTEGER FileOffset,
|
PLARGE_INTEGER FileOffset,
|
||||||
PVOID Buffer,
|
PVOID Buffer,
|
||||||
ULONG Length,
|
ULONG Length,
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
BOOLEAN Paging,
|
BOOLEAN Paging,
|
||||||
#endif
|
#endif
|
||||||
PIO_STATUS_BLOCK ReadStatus);
|
PIO_STATUS_BLOCK ReadStatus);
|
||||||
|
|
|
@ -83,7 +83,7 @@ NTSTATUS
|
||||||
KdbSymGetAddressInformation(
|
KdbSymGetAddressInformation(
|
||||||
IN PROSSYM_INFO RosSymInfo,
|
IN PROSSYM_INFO RosSymInfo,
|
||||||
IN ULONG_PTR RelativeAddress,
|
IN ULONG_PTR RelativeAddress,
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
IN PROSSYM_LINEINFO RosSymLineInfo
|
IN PROSSYM_LINEINFO RosSymLineInfo
|
||||||
#else
|
#else
|
||||||
OUT PULONG LineNumber OPTIONAL,
|
OUT PULONG LineNumber OPTIONAL,
|
||||||
|
|
|
@ -90,7 +90,7 @@ static BOOLEAN KdbpCmdSet(ULONG Argc, PCHAR Argv[]);
|
||||||
static BOOLEAN KdbpCmdHelp(ULONG Argc, PCHAR Argv[]);
|
static BOOLEAN KdbpCmdHelp(ULONG Argc, PCHAR Argv[]);
|
||||||
static BOOLEAN KdbpCmdDmesg(ULONG Argc, PCHAR Argv[]);
|
static BOOLEAN KdbpCmdDmesg(ULONG Argc, PCHAR Argv[]);
|
||||||
|
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
static BOOLEAN KdbpCmdPrintStruct(ULONG Argc, PCHAR Argv[]);
|
static BOOLEAN KdbpCmdPrintStruct(ULONG Argc, PCHAR Argv[]);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -139,7 +139,7 @@ static const struct
|
||||||
{ "sregs", "sregs", "Display status registers.", KdbpCmdRegs },
|
{ "sregs", "sregs", "Display status registers.", KdbpCmdRegs },
|
||||||
{ "dregs", "dregs", "Display debug registers.", KdbpCmdRegs },
|
{ "dregs", "dregs", "Display debug registers.", KdbpCmdRegs },
|
||||||
{ "bt", "bt [*frameaddr|thread id]", "Prints current backtrace or from given frame addr", KdbpCmdBackTrace },
|
{ "bt", "bt [*frameaddr|thread id]", "Prints current backtrace or from given frame addr", KdbpCmdBackTrace },
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
{ "dt", "dt [mod] [type] [addr]", "Print a struct. Addr is optional.", KdbpCmdPrintStruct },
|
{ "dt", "dt [mod] [type] [addr]", "Print a struct. Addr is optional.", KdbpCmdPrintStruct },
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -460,7 +460,7 @@ KdbpCmdEvalExpression(
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __ROS_CMAKE__
|
#ifdef __ROS_DWARF__
|
||||||
|
|
||||||
/*!\brief Print a struct
|
/*!\brief Print a struct
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -15,6 +15,7 @@ add_subdirectory(spec2def)
|
||||||
add_subdirectory(unicode)
|
add_subdirectory(unicode)
|
||||||
|
|
||||||
if(NOT MSVC)
|
if(NOT MSVC)
|
||||||
|
add_subdirectory(rsym)
|
||||||
add_subdirectory(widl)
|
add_subdirectory(widl)
|
||||||
add_subdirectory(wpp)
|
add_subdirectory(wpp)
|
||||||
add_subdirectory(wrc)
|
add_subdirectory(wrc)
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
|
||||||
add_executable(rsym rsym_common.c rsym.cmake.c)
|
if(ARCH MATCHES i386)
|
||||||
|
add_executable(rsym rsym_common.c rsym.c)
|
||||||
|
elseif(ARCH MATCHES amd64)
|
||||||
|
add_executable(rsym rsym_common.c rsym64.c)
|
||||||
|
endif()
|
||||||
add_executable(raddr2line rsym_common.c raddr2line.c)
|
add_executable(raddr2line rsym_common.c raddr2line.c)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue