[CMAKE] Update sdk/cmake/baseaddress(,_msvc).cmake (#6627) Follow-up to #6624 (fd96666). ReactOS got rekt in that PR because kernel32.dll got so larger. Fix base addresses of DLLs to boot successfully. Sorry. (dll/ntdll/ldr/ldrutils.c:1423) Illegal DLL relocation! C:\ReactOS\System32\ntdll.dll overlaps kernel32.dll *** Fatal System Error: 0xc0000269 Proposed changes After latest build: python gen_baseaddress.py C:\Users\katahiromz\reactos-1\output-VS-i386 python gen_baseaddress.py C:\Users\katahiromz\reactos-1\output-MinGW-i386
[MSI_WINETEST][BASEADDRESS] Rename the 'custom' and 'selfreg' build targets. They are renamed to 'msi_custom' and 'msi_selfreg', respectively. This is to avoid any future build target name collisions with other tests that would also use similarly-named targets. (For example, a future setupapi wine-synced commit.)
[CMAKE] Remove "/Gy" option from ML Reason: VS solution builds pass the compiler options to the assembler. These are usually ignored and result in a warning only, but ML of the latest VS supports /Gy (function level linking), but that requires all functions to be declared with "PROC" and otherwise results in an error.
[CMAKE][MVDM] Fix CMAKE_ASM16_COMPILER for non-x86 MSVC builds Ensure that CMAKE_ASM16_COMPILER is 32-bit MASM. It is used only for compiling 16-bit x86 ASM code on non-x86 builds. Original patch by serrox. CORE-10452, CORE-17604 Co-authored-by: Sergey Chernov <serrox@ya.ru>
[SDK] Improve gen_baseaddress.py and its output files (#4964) * [SDK:TOOLS] Improve gen_baseaddress.py Adds some kbd layout modules into the excludes-section: that we do lack for todays master: e.g._ kbdeo, kbdsf, kbdrost and also some that we lacked in the past (for improving backwards compatibility of the script to older rls-branches): kbdgm, kbdes, kbdgrist, kbdja, kbdko, kbdsk, kbdsk1 * [SDK:CMAKE] Highlight in the output files where the script does misbehave
[SMDLL][SMLIB] Deprecate the legacy ROS-specific SMDLL and improve SM client functions. (#4821) This DLL was exporting legacy NT-incompatible or ROS-specific SM client functions, that have been since 10 years now (2012) replaced by the new NT-compatible SM: - SmConnectApiPort(): was just SmConnectToSm(). - SmCompleteSession(): The legacy SMSS used it for when a subsystem initialization was finished. Now (NT-compatible) this function is called by subsystems **only** when a subsystem session **terminates**: SmSessionComplete(). - SmExecuteProgram(): was just the client side of SmLoadDeferedSubSystem() (whose server side is not implemented yet). The legacy SM "old" SmExecPgm implementation actually was "SmLoadDeferedSubSystem"... - SmLookupSubsystem(): is a utility-only function to read any registry value inside "Session Manager\SubSystems". Move SMDLL's readme into SMLIB and update its contents. Collect some residual useful functions into smutils.c (and moved in SMLIB, though not compiled yet): - SmExecuteProgram(), now implemented as a wrapper around SmExecPgm(); - SmLookupSubsystem(), described above; - SmQueryInformation(), that retrieves a list of currently-running subsystems. [SMLIB] Validate SbApiPortName's length in SmConnectToSm(). Fix CommandLine length validation in SmStartCsr(). Add documentation (+ SAL annotations) to the NT-compatible SMSS client functions. smmsg.h: Add both Win32 and Win64 struct sizes C_ASSERTs for those whose size change between these two processor architecture sizes. [SMLIB] Introduce SmSendMsgToSm() as helper to send data into the SM LPC port. + Make the other API functions use it. It should be observed that in Vista+, both functions SmConnectToSm() and this new SmSendMsgToSm() are exported by NTDLL under the names RtlConnectToSm() and RtlSendMsgToSm() (and use the same signature). See: https://www.geoffchappell.com/studies/windows/win32/ntdll/history/names60.htm [NTDLL] Correctly stub RtlConnectToSm() and RtlSendMsgToSm(). [NTDLL_VISTA] Link to SMLIB and simply export RtlConnectToSm() and RtlSendMsgToSm().
[REACTOS] Finally get some ARM64 applications building (#4517) - Add some missing ARM64 exports to ntdll, kernel32 and user32 - Create mmtypes header file based on WoA debug symbols - Get the remaining headers in order, so we can build ARM64 apps - Adjust subsystem version for binaries so they can run on WoA host - Get calc, notepad and more base apps to build for ARM64 platform CORE-17518 Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org> Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>