Commit Graph

5918 Commits

Author SHA1 Message Date
Rémi Bernon 6698a2ef7f widl: Output interface C names in method argument list.
This fixes WinRT interface generation where only simple names were used
instead of the C interface names.

With the previous sample idl:

    #ifdef __WIDL__
    #pragma winrt ns_prefix
    #endif

    import "wtypes.idl";

    namespace Windows {
        [object]
        interface IFoo {}

        [object]
        interface IBar { HRESULT DoBar([in] IFoo *foo); }
    }

$ widl -o windows.foo.h windows.foo.idl

Generated file diff before/after:

    diff --git a/windows.foo.h b/windows.foo.h
    index 3790dc7..65151cb 100644
    --- a/windows.foo.h
    +++ b/windows.foo.h
    @@ -123,7 +123,7 @@ typedef struct __x_ABI_CWindows_CIBarVtbl {
         /*** IBar methods ***/
         HRESULT (STDMETHODCALLTYPE *DoBar)(
             __x_ABI_CWindows_CIBar *This,
    -        IFoo *foo);
    +        __x_ABI_CWindows_CIFoo *foo);

         END_INTERFACE
     } __x_ABI_CWindows_CIBarVtbl;
    @@ -138,7 +138,7 @@ interface __x_ABI_CWindows_CIBar {
     #define __x_ABI_CWindows_CIBar_DoBar(This,foo) (This)->lpVtbl->DoBar(This,foo)
     #else
     /*** IBar methods ***/
    -static FORCEINLINE HRESULT __x_ABI_CWindows_CIBar_DoBar(__x_ABI_CWindows_CIBar* This,IFoo *foo) {
    +static FORCEINLINE HRESULT __x_ABI_CWindows_CIBar_DoBar(__x_ABI_CWindows_CIBar* This,__x_ABI_CWindows_CIFoo *foo) {
         return This->lpVtbl->DoBar(This,foo);
     }
     #endif

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:07:00 +02:00
Rémi Bernon f4f612a077 widl: Search for known types in current namespace.
Fixes the following error with this sample idl:

    #ifdef __WIDL__
    #pragma winrt ns_prefix
    #endif

    import "wtypes.idl";

    namespace Windows {
        [object]
        interface IFoo {}

        [object]
        interface IBar { HRESULT DoBar([in] IFoo *foo); }
    }

$ widl -o windows.foo.h windows.foo.idl
windows.foo.idl:13: error: type 'IFoo' not found

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-07 21:07:00 +02:00
Nikolay Sivov 5d5329936e api-ms: Redirect com-private to combase.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-02 16:30:04 +02:00
Martin Storsjo 7ca68a8631 winedump: Fix the dumping of arm64 packed float restoration.
This previously dumped one register pair too few.

Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-28 19:28:24 +02:00
Alexandre Julliard 75e616d52b ntdll: Clear the syscall frame on return instead of popping the previous one.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-27 12:14:35 +02:00
Paul Gofman 2255a21bc6 wmc: Add Null facility.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 19:31:43 +02:00
Alexandre Julliard 0e7f6e0ed3 winebuild: Allow syscalls to use the cdecl convention.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 13:51:37 +02:00
Alexandre Julliard 7571fa87df makefiles: Don't implicitly import the module itself when -nodefaultlibs is used.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Martin Storsjo af6853278f winedump: Fix dumping of rare arm64 unwind opcodes.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:00:29 +02:00
Martin Storsjo 849d08b0ae winebuild: Use the right arm64 page/pageoff relocation syntax for darwin.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 22:32:25 +02:00
Francois Gouget fb5cd3cf16 winapi: Update win16.api.
Wine no longer has winedos16.dll and wprocs.dll and display.drv,
keyboard.drv and mouse.drv have a .drv extension, not a .dll one.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 21:41:04 +02:00
Francois Gouget f57c5dde00 winapi: Remove obsolete entries from win32.api.
Wine no longer has d3dx8.dll, d3dxof.dll, glut32.dll, msacmmap.dll,
winedos.dll, wineesd.drv, winenas.drv and winetty.drv dlls.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 21:41:02 +02:00
Martin Storsjo 11bb6deb08 tools: Upgrade the config.guess/config.sub scripts.
The updated version recognizes arm64 macos.

Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:04:03 +02:00
Serge Gautherie 84458b1927 winapi_test: Minor $pointer_size check consistency tweak.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 12:29:09 +02:00
Serge Gautherie 78e9192d07 winapi_test: '* long *' is 4 bytes, not pointer size, on Windows.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 12:29:05 +02:00
Serge Gautherie 4cd1aa12b9 winapi_test: Escape parentheses in regexp, Allow spaces around them.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 12:28:54 +02:00
Serge Gautherie 44df633d19 winapi_test: PshpackN.h can only be 1/2/4/8.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 12:28:49 +02:00
Serge Gautherie 99c0ab2ea1 winapi_test: Restore horizontal alignment of macro defines.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 21:26:15 +02:00
Serge Gautherie c26d7470cc winapi_test: Horizontally align TEST_TYPE_SIGNED() parameter.
Signed-off-by: Serge Gautherie <reactos-git_serge_171003@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 21:25:56 +02:00
Serge Gautherie 49936b31b3 winapi: Use $cwd variable instead of pwd command.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 21:25:46 +02:00
Louis Lenders 470e4828d1 api-ms-win-core-file-ansi-l2-1-0: Add dll.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49477
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 20:22:39 +02:00
Louis Lenders 0f04021328 api-ms-win-core-file-fromapp-l1-1-0: Add dll.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49477
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 20:22:39 +02:00
Louis Lenders c1202d43a8 api-ms-win-core-memory-l1-1-3: Add dll.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49477
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 20:22:38 +02:00
Alexandre Julliard cff04b34ac winebuild: Always use DllMain as entry point for the 32-bit side of a 16-bit module.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49559
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-03 12:06:08 +02:00
Jacek Caban fd71ffb44a winegcc: Try using msvc file align syntax if mingw-style is not supported.
Allows setting file alignment on LLD 10.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-01 10:00:18 +02:00
Jacek Caban 5e4ca097be winegcc: Support file alignment on msvc target.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-01 10:00:18 +02:00
Alexandre Julliard 15b3584603 winebuild: Store the syscall frame in the thread data on ARM64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:35:30 +02:00
Alexandre Julliard 28e443d9e2 winebuild: Store the syscall frame in the thread data on ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:31:59 +02:00
Alexandre Julliard 9a7c56d9e7 winebuild: Store the syscall frame in the thread data on x86_64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:10:28 +02:00
Alexandre Julliard 8e3b5183cc winebuild: Store the syscall frame in the thread data on i386.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:00:50 +02:00
Serge Gautherie 866f672505 winapi: Update 'perl -w' to 'use warnings 'all''.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-24 18:37:54 +02:00
Serge Gautherie a771e58ef3 winapi_test: Fix 'MIXERLINECONTROL[AW]' typos.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-24 18:26:18 +02:00
Serge Gautherie 151af8c042 winapi_test: Remove MIDL_STUB_MESSAGE field exclusions.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-24 18:26:18 +02:00
Alexandre Julliard 0e4d22bd8d winegc: Support overriding the default PE file alignment.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-23 22:30:49 +02:00
Rémi Bernon e36bed4f37 winegcc: Align sections in PE files to page size.
This makes sure it will be possible to mmap the section directly instead
of having to copy them. It then also makes perf able to figure the code
origin for Wine modules.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-23 22:30:49 +02:00
Serge Gautherie db11d6dcca winapi_test: Add a blank line between common and specific headers.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:15:51 +02:00
Serge Gautherie 0c3fd2238e winapi_test: Remove useless winbase.h for wininet test.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:15:50 +02:00
Serge Gautherie d67b1fe51c winapi_test: Remove useless common headers for shlwapi test.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:15:48 +02:00
Serge Gautherie 246e9e4358 winapi_test: Add common headers for rpcrt4 test.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:15:46 +02:00
Serge Gautherie 181a114d44 winapi_test: Fix a verifying loop on headers, which never finds any type name.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:15:43 +02:00
Serge Gautherie 5c427685fb winapi_test: Remove leftover PUUID_VECTOR from tests.dat.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:15:41 +02:00
Serge Gautherie 1960df8a2a winapi_test: Add/remove headers for urlmon test.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 13:25:08 +02:00
Paul Gofman e9b3660e72 ntdll: Always align stack pointer in __wine_syscall_dispatcher on x64.
Syscall thunks break stack alignment for dispatcher. Regardless of that,
it is probably better not to assume aligned stack in syscall thunk entry.

Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-14 22:31:27 +02:00
Jacek Caban 35352575e4 server: Remove no longer needed fill_console_output request.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-14 18:27:59 +02:00
Jacek Caban 7e4ea871a3 winebuild: Use asm_name for __wine_syscall.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 17:41:09 +02:00
Alexandre Julliard 461fc592ad winebuild: Fix retrieving syscall arg length on x86_64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-09 13:04:05 +02:00
Alexandre Julliard 917a206b01 winebuild: Generate Windows-style syscall thunks on x86_64.
Based on patches by Michael Müller.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 14:38:23 +02:00
Alexandre Julliard 20715ee3fd winebuild: Generate Windows-style syscall thunks on x86.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 14:38:20 +02:00
Zebediah Figura d33474fa6b winebuild: Fix a spelling error in a comment.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 07:49:33 +02:00
Zebediah Figura 37238a74a5 api-ms-win-core-systemtopology-l1-1-0: New DLL.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 19:24:27 +02:00
Alexandre Julliard b2d09cbb21 winebuild: Add generation of system call thunks.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 13:07:23 +02:00
Alexandre Julliard a0266339c7 winebuild: Add a -syscall entry point flag
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 13:07:23 +02:00
Alexandre Julliard 66fb3802d3 winebuild: Allow specifying a spec file also for Unix libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-06 16:17:24 +02:00
Alexandre Julliard e6632e0412 winebuild: Don't use a dll entry point for Unix libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 10:59:35 +02:00
Alexandre Julliard 2cf256686e makefiles: Use -munix when building a Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 10:59:35 +02:00
Alexandre Julliard cbc35152c4 winegcc: Pass -mno-cygwin and -munix flags directly to winebuild.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 10:59:35 +02:00
Alexandre Julliard 7933562048 winebuild: Support a -mno-cygwin flag.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-01 10:59:35 +02:00
Paul Gofman 19aa67d170 winebuild: Correct hotpatching prologue in import thunks for x86_64.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48938
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-26 20:58:50 +02:00
Alexandre Julliard cee48cc789 winebuild: Make the 32-bit side of a 16-bit module always a DLL.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-19 15:14:12 +02:00
Dmitry Timoshkov 77bf4d4973 winedump: Fix parsing of SLTG typelib created with some old tool.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49372
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-15 20:56:17 +02:00
Alexandre Julliard c873db8c1d makefiles: Also build import libs for extra test modules.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-12 19:40:49 +02:00
Martin Storsjo d51c5723c3 widl: Make decl_needs_parens static.
This function lacks a declaration in header.h and isn't used
outside of this source file.

This fixes warnings about missing a prototype, when built as part
of mingw-w64-tools (where it is built with -Wmissing-prototypes).

Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-12 17:16:26 +02:00
Alexandre Julliard b925dd78b8 ntdll: Use the actual zero_bits parameter in the server requests.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Nikolay Sivov 75a34d9408 dwrite: Add properties for recently added scripts.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Austin English f3faf6b2ad api-ms-win-downlevel-kernel32-l2-1-0: New dll.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Jacek Caban 0db5f6cf1b winegcc: Add support for -Wl,--whole-archive option.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 10:00:30 +02:00
Jacek Caban c5ee64a101 winegcc: Add support for @file arguments.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 10:00:29 +02:00
Jacek Caban f42e4431fb winegcc: Store main arguments in strarray.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 10:00:26 +02:00
Jacek Caban e9de7761cd winegcc: Pass only raw compiler and linker arguments in forward mode.
Fixes use case like:
CC=winegcc -b i686-w64-mingw32
$CC --version

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-20 20:12:02 +02:00
Jacek Caban 14d97456a9 winegcc: Default to ucrtbase.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:48:56 +02:00
Jacek Caban 7a1a77b676 makedep: Install also generated typelib for installed idl files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 11:54:52 +02:00
Emilio Cobos Álvarez b1084ff910 widl: Use DECLSPEC_ALIGN in MSVC compatible way for return types too.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49173
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 11:54:40 +02:00
Alexandre Julliard 9b8afa0f83 ntdll: Move the Wine version functions to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-17 16:54:39 +02:00
Alexandre Julliard b7e3c93159 makefiles: Add support for building Unix .so libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Alexandre Julliard 469058acc1 winegcc: Allow the output file to end in .so.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Jacek Caban 83d00d328f makedep: Support split debug for cross compiled modules.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Jacek Caban 942e298308 winegcc: Introduce --debug-file option for generating separated symbol files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Jacek Caban d784de82c8 winegcc: Use --safeseh winebuild option on msvc target.
lld-link requires all x86 object files to be SEH compatible unless it's
explicitly disabled.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 19:02:58 +02:00
Jacek Caban e4e05cdaab winebuild: Introduce --safeseh option that allows marking assembly files as SEH compatible.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 19:02:55 +02:00
Jacek Caban 35a7ed0c78 winegcc: Add support for msvc target.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:33:52 +02:00
Jacek Caban 66aa39d959 winegcc: Use libgcc only on mingw target.
It's not available for msvc, but we get all we need from importlibs there.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:33:35 +02:00
Jacek Caban 2dee9b9874 winegcc: Make mingw a separated platform from msvc.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:33:28 +02:00
Jacek Caban 78ce43f017 winegcc: Explicitly pass DLL crt entry point to PE linker when Wine crt is used.
Linkers don't agree on its default.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:33:00 +02:00
Jacek Caban 346cbb6f26 winegcc: Add entry symbol underscore when building linker command.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:32:39 +02:00
Alexandre Julliard 6cc475dbe5 wrc: Remove some dead code.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-30 12:37:27 +02:00
Zebediah Figura dedd5ccc88 sechost: New stub DLL.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 12:02:54 +02:00
Zebediah Figura feeb1c7c24 include: Rename LDR_MODULE to LDR_DATA_TABLE_ENTRY.
This name is used in Microsoft's public winternl.h.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:39 +02:00
Serge Gautherie 0939a3f7f2 winegcc: Reorder DECLSPEC_NORETURN on error().
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 12:57:45 +02:00
Jacek Caban c18443aadb makedep: Don't try to use .delay.a extension for non-PE delay imports.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 19:31:13 +02:00
Alexandre Julliard 62807be8c9 makefiles: Explicitly import libwine where necessary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 12:00:08 +02:00
Alexandre Julliard 1ccd638b1a winegcc: No longer use a constructor for module initialization.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 11:27:53 +02:00
Alexandre Julliard 7193243431 winebuild: Don't use a constructor for dll modules either.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 11:27:33 +02:00
Jacek Caban 4fd8190ef1 widl: Use DECLSPEC_ALIGN in MSVC compatible way.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 20:55:04 +02:00
Alexandre Julliard c30d30d328 winegcc: Fixup constructors after building a module.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:03 +02:00
Alexandre Julliard 6c4046fef1 winebuild: Add --fixup-ctors option to allow intercepting constructors in .so files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:03 +02:00
Alexandre Julliard 593c38cb95 winebuild: Set page size to 4096 also on ARM64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:03 +02:00
Alexandre Julliard b336a084d6 winegcc: Only use a constructor for dll modules.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-15 20:03:30 +02:00
Alexandre Julliard a4677fa23a winebuild: Only generate a constructor for dll modules.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-15 20:03:30 +02:00
Alexandre Julliard 3622b9ab15 winegcc: Use the CRT startup code also for non-PE builds.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-15 17:21:07 +02:00
Francois Gouget 8bd4bc4716 winapi_test: Add support for more base types.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:08:19 +02:00
Francois Gouget 1c9077f13d winapi: Skip #if 0 sections.
They are typically used as 'super comments' and may not contain C code.
They are also typically not nested so this ignores nesting.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:08:14 +02:00
Francois Gouget 4c554940d4 winapi: Ignore function declarations that are too complex.
A few function declarations are simply too complex for the winapi
parser. Some are because they are in fact macro calls, and other because
they mix parentheses with array declarations or strange function pointer
types.
When that happens print an error message and ignore the function
declaration.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:08:10 +02:00
Francois Gouget ebbc0686ec winapi: Add support for some new spec file declarations.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:08:02 +02:00
Francois Gouget e5531732ae winapi_test: Clarify the error message regarding struct size and alignment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:07:58 +02:00
Francois Gouget 13c69ae840 winapi: Allow DECLSPEC_ALIGN() in typedef declarations.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:07:53 +02:00
Francois Gouget eb85be50f4 winapi: Tweak a couple of typedef error messages.
This makes them more unique, making it easier to find which part of the
code issues these error messages.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:07:49 +02:00
Francois Gouget 5fec867694 winapi_check: Fix support for .ocx API documentation.
The module name must include non-default extensions, for instance
'wshom.ocx'. Truncating the module name prevents later lookups from
finding the API's spec file declaration.

Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:07:41 +02:00
Serge Gautherie 3462153a05 winapi_test: Do not multiply type size when it is undefined, in _refresh().
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:04:07 +02:00
Serge Gautherie 930ff8786f winapi_test: Add DYNAMIC_TIME_ZONE_INFORMATION to tests.dat.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-13 21:33:30 +02:00
Serge Gautherie 867a0bd6cd winapi_test: Tests.dat needs timezoneapi.h.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-13 21:33:30 +02:00
Piotr Caban 321d26cbb4 server: Use correct clock in select.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 21:04:04 +02:00
Chip Davis 1387075b80 widl: Cast server functions to void *.
This avoids a warning casting between calling conventions with Clang.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 21:04:04 +02:00
Alexandre Julliard 3d77dd1058 winedump: Get rid of a useless destructor.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-09 21:04:04 +02:00
Alexandre Julliard c82c63f58a makefiles: Don't use standard libs for programs that specify -nodefaultlibs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-07 20:55:48 +02:00
Chip Davis f83646736b winegcc: Put quotes around arguments with spaces when printing them.
This makes it easier to copy and paste the command into the shell.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 10:46:03 +02:00
Alexandre Julliard 5603ece70d makefiles: Don't add default libs for msvcrt builds.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 11:31:33 +02:00
Alexandre Julliard e67ca92f57 makefiles: Always explicitly specify the C runtime import.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 11:30:48 +02:00
Alexandre Julliard fbbad0f10a makefiles: Always build 16-bit modules with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 11:09:19 +02:00
Alexandre Julliard 2746797ad5 winebuild: Support building krnl386.exe in PE format.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 10:55:25 +02:00
Alexandre Julliard ec19bbf43f unicode: Store downloaded data files in the cache directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 19:43:38 +01:00
Zebediah Figura f78fe960bc make_makefiles: Allow running from a separate worktree.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 19:43:38 +01:00
Jacek Caban 05b774fb48 makedep: Build builtin DLLs with ucrtbase.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-20 19:32:04 +01:00
Rémi Bernon f181d5ce82 tools: Only update protocol version if something changed.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-19 22:09:32 +01:00
Myah Caron ba4a3334ab api-ms-win-core-registry-l2-2-0: Add dll.
Signed-off-by: Myah Caron <qsniyg@mail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-18 16:40:21 +01:00
Alexandre Julliard 134074e553 make_makefiles: Remove updating codepage list, this is done by make_unicode now.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-18 16:40:20 +01:00
Alexandre Julliard 94397d96bb unicode: Add compression flags to the sortkey table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-18 16:03:33 +01:00
Alexandre Julliard c567af732b kernelbase: Use the ctype table from the sortkey file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 15:19:20 +01:00
Alexandre Julliard 95aeb41c8c unicode: Generate the NLS file for sortkeys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 15:18:57 +01:00
Alexandre Julliard 712839d581 unicode: Generate a registry script for Nls keys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 15:18:52 +01:00
Alexandre Julliard d87d4a4a04 unicode: Store data for CT_CTYPE3 types.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 11:26:47 +01:00
Alexandre Julliard 57a6033c0a unicode: Add separate helper for removing linguistic case mappings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 11:26:41 +01:00
Alexandre Julliard 8207bdfecb winedump: Add dumping of sortkey NLS files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 11:25:38 +01:00
Serge Gautherie aa384d3642 tools: Remove 0x0501 API versions forced by winapi_test.
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-13 20:10:44 +01:00
Alexandre Julliard b83af7c763 unicode: Update data tables to Unicode 13.0.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-13 13:23:11 +01:00
Alexandre Julliard eb7d7ef863 unicode: Read data files from inside the zip without extracting them.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-13 13:23:11 +01:00
Alexandre Julliard dec6f0773b unicode: Fix parsing of Indic data files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-13 11:40:29 +01:00
Francois Gouget 75a5107c96 dsound: Move make_fir to the dsound directory.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-09 12:10:52 +01:00
Jacek Caban 4ec4988c2e makedep: Use winebuild to build cross compiled static libraries.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 22:44:50 +01:00
Jacek Caban c0467a1470 winebuild: Add an option to build a static library.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 22:43:41 +01:00
Jacek Caban d473611469 winebuild: Also try llvm variants of tools in find_tool.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 22:43:27 +01:00
Jacek Caban aabfd2dd3a winegcc: Add support for using clang directly.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:22:17 +01:00
Jacek Caban 9a9f35a4df winegcc: Pass tool by id to build_tool_name.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:22:13 +01:00
Jacek Caban 4cfe747772 winegcc: Return build_tool_name result as strarray.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:22:11 +01:00
Jacek Caban 945c61c32d winegcc: Lookup PATH in find_binary and don't try to run binaries that can't be found.
Based on winebuild.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:22:07 +01:00
Alexandre Julliard 5d2ec076fe kernel32: Remove the nameprep tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 13:20:24 +01:00
Jacek Caban 0959d189c8 makedep: Build builtin programs with ucrt.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-02 20:29:32 +01:00
Jacek Caban 747c46a4bc winegcc: Don't pass ld command to winebuild when building PE file.
It's not used anyway.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Jacek Caban e7fe6c0ac2 winegcc: Fix passing -delayload argument to linker.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Jacek Caban cf20f54dd9 winegcc: Check more target components for platform string.
Fixes parsing llvm style mingw target *-pc-windows-gnu.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-27 23:34:51 +01:00
Jacek Caban d24503fecf winebuild: Check more target components for platform string.
Fixes parsing llvm style mingw target *-pc-windows-gnu.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-27 23:34:51 +01:00
Jacek Caban b253bd6565 winegcc: Clean up output file on error.
Based on winebuild.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 21:10:40 +01:00
Jacek Caban b0ea67ed46 winegcc: Treat -target argument as an alias to --target for clang compatibility.
clang uses -target for the same thing as we do.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 21:10:29 +01:00
Jacek Caban 8cf418314c winegcc: Recognize -rtlib as linker argument.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 21:10:22 +01:00
Alexandre Julliard e7eaa1a857 unicode: Remove no longer used normalization tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +01:00
Alexandre Julliard f9f3e57cf8 unicode: Generate the NLS files for normalization forms.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +01:00
Alexandre Julliard 3d55de8c73 winedump: Add dumping of normalization NLS files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 09:18:57 +01:00
Jacek Caban 229c33791f makedep: Define _UCRT in modules that link to ucrtbase.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-18 20:30:14 +01:00
Alexandre Julliard b507fe49ea unicode: Use the standard compression function for the casemap table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-18 11:14:58 +01:00
Dmitry Timoshkov 2c501aa750 widl: If a variable doesn't have a name provide an autogenerated one.
Otherwise widl crashes while generating a typelib for a structure
with an embedded anonymous union:

typedef struct _s
{
    int type;
    union
    {
        int f;
    };
} s;

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Dmitry Timoshkov 8d0f8da652 widl: Generate name for a tagless union.
Otherwise widl crashes while generating a typelib for

typedef struct _s
{
    int type;
    union
    {
        int field;
    } u;
} s;

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard 2b9d720ea0 unicode: Take into account explicit composition exclusions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard 30f298f5db unicode: Remove non-starter and compatibility compositions from the table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard ce41b32117 unicode: Generate compositions on the fly based on the decomposition table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard 64e6d72284 unicode: Add support for high Unicode planes in composition tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard c658731975 unicode: Add support for high Unicode planes in decomposition tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard 148f564d10 unicode: Add support for high Unicode planes to the combining class table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 13:49:05 +01:00
Alexandre Julliard 23cee79d72 libport: Move the composition tables back to libwine and stop updating them.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 13:49:05 +01:00
Alexandre Julliard 0f2e88b0b2 unicode: Copy the composition table to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 10:30:06 +01:00
Alexandre Julliard 4dab9bc04b unicode: Move the compatibility decomposition table to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 10:29:47 +01:00
Jacek Caban 0d537c854c makedep: Use msvcrt headers for objects inside importlibs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-13 16:44:24 +01:00
Alexandre Julliard 5b4bdb9fd3 libport: Move the codepage tables back to libwine and stop updating them.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:03 +01:00
Alexandre Julliard 831f58caa5 libport: Move the codepage table functions back to libwine and make them obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:02 +01:00
Alexandre Julliard c47910ec47 wmc: Use external NLS files for codepage conversions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:02 +01:00
Alexandre Julliard 721a2add2f wrc: Use external NLS files for codepage conversions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:02 +01:00
Alexandre Julliard a4fc84bd4d wmc: Add --nls-dir option.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:02 +01:00
Alexandre Julliard 64ff68c884 wrc: Add --nls-dir option.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:02 +01:00
Jacek Caban a592c1ed08 makedep: Use -mno-cygwin for linking modules with no sources.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 22:39:59 +01:00
Alexandre Julliard fb316c3377 unicode: Generate nls files for the codepage tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 09:06:45 +01:00
Alexandre Julliard 42a30a693a makefiles: Move l_intl.nls to a new nls directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 09:05:33 +01:00
Alexandre Julliard cb524e09a6 unicode: Remove some codepages that don't exist on Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 14:56:49 +01:00
Alexandre Julliard 09d97e9685 unicode: Use codepage files from Microsoft's Open Specification data.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-10 14:56:49 +01:00
Alexandre Julliard 44ce5d9283 unicode: Support fetching a zip containining the data files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-09 09:48:42 +01:00
Alexandre Julliard d94b605a8a unicode: Add JIS-0212 mappings to the 20932 (EUC-JP) codepage table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-08 12:15:41 +01:00
Alexandre Julliard 0a66eaea68 wrc: Set the output format from the output file name.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 10:38:06 +01:00
Alexandre Julliard fe888bbbb6 wrc: Avoid converting Unicode strings back to Ansi.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 10:34:59 +01:00
Alexandre Julliard 1d8f4fe4a0 wrc: Add an option to set the input codepage to UTF-8.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 10:34:59 +01:00
Alexandre Julliard 2045950096 wrc: Export the convert_string_utf8() helper function.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 10:25:28 +01:00
Alexandre Julliard 499d772cb6 wrc: Simplify the put_string() helper function.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 08:26:11 +01:00
Alexandre Julliard 358b4ad99a wrc: Add a helper function to terminate the resource data.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 08:16:19 +01:00
Alexandre Julliard d96a0acf29 winegcc: Make the WINEBUILD variable take precedence over the bin directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 21:40:22 +01:00
Alexandre Julliard f504135e38 wmc: Always output resource strings in Unicode format.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 20:04:59 +01:00
Alexandre Julliard ccfabb323b wmc: Add trailing newlines to error messages.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 20:04:59 +01:00
Alexandre Julliard 8247686c10 wmc: Set the output format from the output file name.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 20:04:59 +01:00
Alexandre Julliard b7b44224d1 wmc: Reimplement input format detection to correctly handle Unicode BOM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 20:04:59 +01:00
Alexandre Julliard fd86c85918 libport: Move the collation table back to libwine and stop updating it.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 09:00:47 +01:00
Alexandre Julliard 599166bd35 libport: Move the digitmap table back to libwine and stop updating it.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 09:00:40 +01:00
Alexandre Julliard c2f6714970 wmc: Directly implement UTF-8 conversions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:27 +01:00
Alexandre Julliard 88abd7cb98 wrc: Directly implement UTF-8 conversions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:27 +01:00
Jacek Caban 26ad9a7ba3 widl: Check dispinterfaces for duplicated methods.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:27 +01:00
Alexandre Julliard 6346809302 unicode: Move the combining class table to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard 0576fa43c4 unicode: Expand surrogates in decomposition tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard cd8eaef47e unicode: Avoid copying the decomposition data when not necessary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard a646e4e6f2 unicode: Store recursive decompositions directly in the tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard dba4bd756a unicode: Store variable-length sequences also for the main decomposition table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Zebediah Figura 56995dd322 widl: Output a registry script for all interfaces written into the typelib.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46005
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 16:22:33 +01:00
Alexandre Julliard 69a9c2be72 winegcc: Also search the include and lib dirs relative to the binary path.
Suggested by Kevin Puetz.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 15:57:11 +01:00
Alexandre Julliard 90a543d3d7 widl: Also search the include dir relative to the binary path.
Suggested by Kevin Puetz.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 11:33:13 +01:00
Alexandre Julliard 5417826caa wrc: Also search the include dir relative to the binary path.
Suggested by Kevin Puetz.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 11:30:13 +01:00
Alexandre Julliard f17a228d45 unicode: Try harder to reuse subsequences when compressing data arrays.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 19:26:13 +01:00
Alexandre Julliard bfeb0a97fe unicode: Use a standard two-level mapping table for the sortkeys map.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 19:25:07 +01:00
Alexandre Julliard fb87398b99 unicode: Use a standard two-level mapping table for the mirror map.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 18:58:50 +01:00
Alexandre Julliard 31360d4785 unicode: Use a standard two-level mapping table for the digit map.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-28 18:58:50 +01:00
Jacek Caban 1867a411b0 winegcc: Use Wine crt when linking to msvcrt.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:40:42 +01:00
Alexandre Julliard 62069b4ee8 sfnt2fon: Directly store the codepage tables for the few encodings we need.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:37:54 +01:00
Gerald Pfeifer 7299735fdf winedump: Add a default case to numeric_leaf().
This addresses two warnings issues by GCC 10 (currently in development
stage 4, so this is unlikely to change):

msc.c:687:9: warning: 'value' may be used uninitialized in this function
msc.c:301:13: warning: 'value' may be used uninitialized in this function

Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 17:21:06 +01:00
Jacek Caban c6e6771fab winegcc: Use Wine crt when linking builtin EXEs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Jacek Caban 618ac5f32a winegcc: Add support for -Wl,--entry argument.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Jacek Caban 3ad95e03b8 makedep: Link importlib object files into module only when it's explicitly imported.
To prevent msvcrt linking its own importlib into DLL.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Alexandre Julliard 9c3a25b855 unicode: Specify a bit width instead of a format when dumping arrays.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Alexandre Julliard a08821186a unicode: Use existing helpers to build the sortkeys table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Alexandre Julliard 4b5c67ee0b unicode: Remove case mappings that don't round-trip.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Alexandre Julliard bd9d83b73a unicode: Use existing helpers to build the l_intl.nls file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 16:45:02 +01:00
Alexandre Julliard 3f26eb4455 wmc: Get rid of some unused codepage information.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 10:03:57 +01:00
Alexandre Julliard b2c26f28f0 winedump: Add dumping of codepage NLS files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-22 23:07:06 +01:00
Alexandre Julliard 51cea310a0 winedump: Add dumping of case mapping NLS files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-22 23:06:57 +01:00
Alexandre Julliard 5b0ba5be0b makefiles: Add the builtin flag again after stripping.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47718
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-18 21:13:16 +01:00
Alexandre Julliard 51ffea5a39 winegcc: Use winebuild to set the builtin flag.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-18 21:13:16 +01:00
Alexandre Julliard 9dc348a071 winebuild: Add a --builtin option to mark PE files as builtins.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-18 21:13:13 +01:00
Alexandre Julliard f6a1b37d13 tools: Upgrade the autoconf scripts.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-18 17:56:21 +01:00
Alexandre Julliard ef2475b4f0 makefiles: Install only exe files in the bin directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:16:36 +01:00
Jacek Caban 55f803c81b makedep: Build implib cross object files with -fno-builtin.
We want to be specific about used function and not want optimizations to
interfere.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Alexandre Julliard 94a3add0ea kernel32: Move LCMapString functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Alexandre Julliard 1b46da5c05 kernel32: Move GetStringType functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:46 +01:00
Nikolay Sivov 624ed18b1f Update to Unicode 12.1.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-09 23:47:45 +01:00
Alexandre Julliard 328ec3a768 kernelbase: Reimplement WideCharToMultiByte using Win32-format codepage tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Alexandre Julliard 7e8f1dac30 kernelbase: Reimplement MultiByteToWideChar() using Win32-format codepage tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Rémi Bernon 1491453ea9 widl: Cast freed pointers to void* to fix discarded-array-qualifiers warning.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-02 22:02:56 +01:00
Alexandre Julliard 7bb286ad9d kernel32: Move FoldStringW() function to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-28 09:05:13 +01:00
Gijs Vermeulen 6ca93646be server: Add support for additional fields in set_console_output_info.
Signed-off-by: Gijs Vermeulen <gijsvrm@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-25 20:47:43 +01:00
Chip Davis 6c50dbd14e winegcc: Pass through -fuse-ld= to the linker.
Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-25 20:47:43 +01:00
Alexandre Julliard 4152f944f6 makefiles: Create source dir symlinks from the makefiles.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-22 14:45:10 +01:00
Jacek Caban 3d19efae72 makedep: Use -Wl,-delayload on cross targets when supported by linker.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-13 22:36:58 +01:00
Jacek Caban 4346d68e1b makedep: Use -Wl,-delayload option for winebuild delayimports.
Also fixes winebuild to correctly handle module extensions.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 21:39:40 +01:00
Jacek Caban 9180dec0b7 winegcc: Add support for -Wl,-delayload argument.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 21:39:40 +01:00
Jacek Caban c15f83a2a3 widl: Use strmake in get_name.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-08 23:37:06 +01:00
Jacek Caban d5c745e467 widl: Don't use fixed size buffer in ctl2_encode_string.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-08 23:36:54 +01:00
Jacek Caban 908c2bec28 widl: Don't use fixed size buffer in ctl2_encode_name.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-08 23:36:50 +01:00
Alexandre Julliard 21c832da63 winegcc: Also check magic number to detect shared libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 22:43:01 +01:00
Alexandre Julliard 42cf6cce4b makefiles: Pass --nostdinc also to widl.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-02 13:55:16 +01:00
Alexandre Julliard 5f39d36a6c widl: Add --sysroot and --nostdinc options.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-02 13:55:16 +01:00
Alexandre Julliard 264d8884d5 widl: Add strmake() helper.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-02 13:55:16 +01:00
Alexandre Julliard 9240ffbb29 wrc: Add --sysroot option.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-02 13:55:16 +01:00
Alexandre Julliard 4f63971169 libport: Add codepage 28601 (Latin/Thai).
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-17 18:23:54 +02:00
Alexandre Julliard 6306a1730a winebuild: Add support for excluding a specific CPU architecture.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-16 14:38:13 +02:00
Zebediah Figura 8746bf094f widl: Also compute buffer size for non-ref arrays.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47886
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 09:59:38 +02:00
Zebediah Figura dd35baa8e3 widl: Write pointer classes for explicitly declared arrays only if they are top-level parameters.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-07 09:59:36 +02:00
Alexandre Julliard a9285c5131 make_unicode: Avoid duplicate lead bytes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-06 13:39:53 +02:00
Huw Davies ba2def2503 winegcc: Add a missing break.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-30 11:48:21 +02:00
Alexandre Julliard 0bfee2c6eb winegcc: Centralize argument parsing into the main switch.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 13:26:52 +02:00
Alexandre Julliard c307223791 winegcc: Update __stdcall defines for ARM platforms.
Reported by Kevin Puetz.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 13:26:52 +02:00
Michael Stefaniuc bbcf44eb97 widl: Add the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:05:44 +02:00
Alexandre Julliard d8bb3030d8 make_specfiles: Don't add forwards to the api-ms-* dlls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-26 21:00:14 +02:00
Kevin Puetz d5e175e32b winegcc: Correctly pass the '-' file name (stdin) to the compiler.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38300
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-24 18:38:28 +02:00
Jacek Caban 6cba24ef1f winegcc: Use -print-libgcc-file-name to find libgcc.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:18 +02:00
Alexandre Julliard d63c51fd30 winegcc: Pass all linker arguments also when testing link options.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:18 +02:00
Alexandre Julliard 683e455497 winegcc: Always search the standard include dirs.
By analogy with the library dir search.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:18 +02:00
Alexandre Julliard 08956bc9bb winegcc: Add --wine-objdir and --winebuild options for the Wine build.
This avoids overloading the meaning of the -B and --sysroot options.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00
Alexandre Julliard cb010cd6ec winegcc: Add ARRAY_SIZE macro.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00
Alexandre Julliard 13850a3eb8 winegcc: Forward the -B options to winebuild.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Alexandre Julliard ab871dc4d8 winegcc: Support the --target option like winebuild does.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Alexandre Julliard 0c2cc9bb05 winegcc: Fix handling of the --sysroot flag when not building inside the Wine tree.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Alexandre Julliard 6ba101b229 winebuild: Add support for the -B option.
Based on a patch by Kevin Puetz.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Francois Gouget 2814409990 widl: Fix a variable name in a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-02 20:46:58 +02:00
Alexandre Julliard 0fd3b1eab9 Revert "winebuild: Quote stdcall decored symbols."
This reverts commit a3e1fe936e.
It breaks with older binutils.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-27 10:41:20 +02:00
Jacek Caban a3e1fe936e winebuild: Quote stdcall decored symbols.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-26 17:41:15 +02:00
Jacek Caban e574d4f8f9 winebuild: Don't underscore local symbols in func_declaration.
This is the case in output_call16_function. GNU ld happens to handle it,
but LLD does not.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-26 17:41:15 +02:00
Jacek Caban dd1a83c20a winebuild: Don't include aliases in importlib .def files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-26 17:41:11 +02:00
Richard Pospesel 57f697e137 widl: Respect wire-marshal typedefs in type libraries.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47041
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 20:04:10 +02:00
Richard Pospesel 4b1dfa6037 widl: Add the typedef to the type library if the aliasee is an anonymous UDT.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47050
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 20:04:05 +02:00
Zebediah Figura 96e11d51ba widl: Write public typedefs into the typelib if they are referenced directly.
I.e. write "apple_t" into the typelib given the following snippet:

typedef [public] struct { ... } apple_t;
library {
interface IFoo {
    HRESULT a(apple_t arg);
}
}

Based on a patch by Richard Pospesel.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 20:04:01 +02:00
Zebediah Figura 4f4763ab6b widl: Handle encapsulated unions in type libraries.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 20:03:57 +02:00
Zebediah Figura 732f67ed38 widl: Generate a name for the encapsulated union type.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 20:03:52 +02:00
Richard Pospesel 181cafcd52 widl: Fail compilation if an incomplete union or enum is used in a remoted field.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 09:33:57 +02:00
Zebediah Figura a58e4cc07c widl: Check for redefinition of named user types.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-21 09:33:55 +02:00
Alexandre Julliard 509e8d2093 winedump: Add dumping for exception info for ARM64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-20 21:29:37 +02:00
Zebediah Figura 0aa6049c8d widl: Create exactly one type_t object per named enum type.
Based on a patch by Richard Pospesel.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47035
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-20 09:08:57 +02:00
Zebediah Figura 833639bd09 widl: Create exactly one type_t object per named union type.
Based on a patch by Richard Pospesel.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-20 09:08:54 +02:00
Zebediah Figura 42321d7a11 widl: Create exactly one type_t object per named structure type.
Regardless of whether we are writing a typelib.

Based on a patch by Richard Pospesel.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-20 09:08:51 +02:00
Zebediah Figura 55234f65a8 widl: Track whether the type has been defined yet in the statement_t and var_t structures.
Based on a patch by Richard Pospesel.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47149
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-20 09:08:48 +02:00
Zebediah Figura 60d668631f widl: Don't store the default pointer type in the type_t structure.
This fixes type format string generation for the following IDL:

typedef int *intp;
[pointer_default(ref)] interface IRef {
    void a(intp *a);
}
[pointer_default(unique)] interface IUnique {
    void b(intp *a);
}

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 11:29:28 +02:00
Zebediah Figura 5cc3548299 widl: Store the "inline" function specifier inside the decl_spec_t structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 11:29:28 +02:00
Richard Pospesel 7e4da76689 widl: Store the "const" type qualifier inside the decl_spec_t structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 11:29:28 +02:00
Zebediah Figura df948ccc05 widl: Fix nesting of functions, pointers, and arrays.
This is actually broken in MIDL, even as recent as the version shipped with
the Windows 10 SDK, but it makes our code simpler, so there's no reason not
to do it right.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 11:29:28 +02:00
Richard Pospesel f131795b30 widl: Pass a decl_spec_t to type_new_alias().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-16 10:09:33 +02:00
Richard Pospesel d4dfbb630f widl: Pass a decl_spec_t to type_new_array().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-16 10:09:29 +02:00
Richard Pospesel e8b6c05242 widl: Pass a decl_spec_t to write_type_left().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-16 10:09:24 +02:00
Richard Pospesel aa2bd521d9 widl: Pass a decl_spec_t to write_type_v().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-16 10:09:19 +02:00
Zebediah Figura d0e10aa372 widl: Store the type for casts and sizeof() expressions as a decl_spec_t.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-16 10:09:13 +02:00
Richard Pospesel e63df7f7bf widl: Store the aliasee as a decl_spec_t structure.
Signed-off-by: Richard Pospesel <richard@torproject.org>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-15 10:22:40 +02:00
Zebediah Figura 2babcd6c1c widl: Use the type_type field to track whether the type is an alias.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-15 10:22:35 +02:00