Alexandre Julliard
6688367046
winegcc: Don't build the .spec.o file for native Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-11 22:59:21 +02:00
Alexandre Julliard
c697ee728b
winegcc: Add a helper function to build the .spec.o file.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-11 22:59:21 +02:00
Martin Storsjö
5de4766475
winebuild: Fix building for arm with older versions of binutils.
...
Use an explicit "movw" instead of a plain "mov", as the immediates
might not fit in a narrow thumb mov instruction. Newer versions
of binutils deduces this implicitly.
Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 23:41:05 +02:00
Martin Storsjo
9d619b1fb0
winebuild: Spell out "x30" instead of "lr" for arm64.
...
This fixes building with older binutils versions.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 11:31:48 +02:00
Alexandre Julliard
de4c91e0a1
Revert "winegcc: Support -Wl,foo=... style linker options."
...
This reverts commit fcda0afdd4
.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51413
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-26 11:33:43 +02:00
Esdras Tarsis
3515da1b82
api-ms-win-core-kernel32-legacy-l1-1-5: Add stub dll.
...
Signed-off-by: Esdras Tarsis <esdrastarsis@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-19 12:35:25 +02:00
Esdras Tarsis
9422d0a0a2
api-ms-win-core-console-l3-2-0: Add stub dll.
...
Needed for Pickup Basketball VR.
Signed-off-by: Esdras Tarsis <esdrastarsis@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-19 12:35:06 +02:00
Alex Henrie
78dd8404c4
api-ms-win-core-featurestaging-l1-1-0: Add DLL.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51329
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-06 16:09:09 +02:00
Alexandre Julliard
216d241178
winebuild: Save/restore the %fs register in the syscall dispatcher on Linux.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-06 15:50:26 +02:00
Alexandre Julliard
5e12256ec4
winebuild: Add a specific platform id for Linux.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-06 15:50:26 +02:00
Connor Abbott
fcda0afdd4
winegcc: Support -Wl,foo=... style linker options.
...
In particular meson uses -Wl,--out-implib=...
Signed-off-by: Connor Abbott <cwabbott0@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-02 16:53:51 +02:00
Connor Abbott
b1fb07e188
winegcc: Support -Wl,--start-group and -Wl,--end-group.
...
These arguments need to be in the correct position so they need to go in
the files array.
Signed-off-by: Connor Abbott <cwabbott0@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-02 16:53:51 +02:00
Connor Abbott
d209d9feb6
winegcc: Pass through -pthread.
...
While you could get 90% of the way with "-lpthread", supporting -pthread
should be more reliable and is required for build systems like meson
that have special handling for the threads dependency.
Since this is both a compiler (really preprocessor) and linker option,
we can't just add it to is_linker_arg().
Signed-off-by: Connor Abbott <cwabbott0@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-02 16:53:51 +02:00
Connor Abbott
f1ab3c8d76
winegcc: Recognize .obj files as objects.
...
For more compatibility with mingw-gcc. Since meson always names object
files with a .obj extension when using mingw, this improves
compatibility with meson.
Signed-off-by: Connor Abbott <cwabbott0@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-02 16:53:51 +02:00
Alexandre Julliard
db26df5934
ntdll: Go through the syscall return path for syscall faults.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-21 18:35:20 +02:00
Alexandre Julliard
0702d6b886
ntdll: Don't allow single-stepping through syscalls.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51273
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-16 15:05:24 +02:00
Alexandre Julliard
7954b86f6b
ntdll: Switch to the kernel stack for syscalls on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-11 18:45:44 +02:00
Alexandre Julliard
08c4419a49
ntdll: Switch to the kernel stack for syscalls on ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-11 18:45:44 +02:00
Alexandre Julliard
25b093f384
ntdll: Switch to the kernel stack for syscalls on x86-64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-11 18:45:44 +02:00
Alexandre Julliard
308a5e7c4d
ntdll: Switch to the kernel stack for syscalls on i386.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-11 15:49:29 +02:00
Francois Gouget
a1bae9f288
make_unicode: Add support for the 720 codepage (Arabic, Farsi and Urdu).
...
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-08 22:28:44 +02:00
Alexandre Julliard
050378d4d7
ntdll: Only restore the modified parts of the syscall frame on i386.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 17:16:21 +02:00
Alexandre Julliard
32f1bfd0f0
ntdll: Only restore the modified parts of the syscall frame on x86-64.
...
Based on a patch by Jacek Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 17:16:21 +02:00
Zebediah Figura
bbe2eaecc9
winebuild: Fix a typo in a comment.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-03 21:50:58 +02:00
Esme Povirk
0807b09cfa
slc: Move shared exports to sppc.
...
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-02 22:13:37 +02:00
Alexandre Julliard
42e42e9085
ntdll: Use a single syscall dispatcher controlled by global flags on i386.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-02 20:16:07 +02:00
Alexandre Julliard
3d9cb5e4f8
ntdll: Use a single syscall dispatcher controlled by global flags on x86-64.
...
Based on a patch by Jacek Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-02 20:16:07 +02:00
Jacek Caban
32afe1d982
makedep: Make unix libs depend on ntdll.so.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 18:00:38 +02:00
Jacek Caban
69ef7374b4
winegcc: Link unix libs directly to native libraries.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 17:59:46 +02:00
Jacek Caban
388c91042c
winegcc: Use -soname for unix libs.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 17:59:44 +02:00
Rémi Bernon
fc64aa7e7c
server: Send HID report data with the WM_INPUT messages.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50506
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-31 12:31:21 +02:00
Alexandre Julliard
e79fa1866c
winebuild: Add support for multiple syscall descriptor tables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-28 21:53:07 +02:00
Alexandre Julliard
543e49397f
winebuild: Store all parameters on the stack for syscall thunks on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-27 21:13:18 +02:00
Henri Verbeet
4ae9f39911
winedump: Make print_longlong() work on 64-bit.
...
In particular, when long is a 64-bit type, the upper 32 bits would previously
be printed twice.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-20 21:48:57 +02:00
Zhiyi Zhang
e7de839513
winedump: Dump the distance array for EMR_EXTTEXTOUTW records.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-17 18:49:09 +02:00
Martin Storsjo
57433856b4
widl: Pick up the target arch from a prefix on argv[0].
...
If the executable is named <target>-widl, try to pick up the target
arch implicitly from there.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-17 17:42:15 +02:00
Martin Storsjo
4766a01818
widl: Allow switching between 32 and 64 bit ARM with the -m32/64 option.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-17 17:42:14 +02:00
Jacek Caban
87e1e43506
winegcc: Use msvcrt by default for PE targets.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-14 20:56:54 +02:00
Jacek Caban
ea239f6b12
winebuild: Use clang -print-prog-name to find LLVM tools.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-10 18:14:07 +02:00
Piotr Caban
24aba09015
api-ms-win-core-console-l1-2-0: Add dll.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-07 22:22:49 +02:00
Paul Gofman
8c0ced87bc
gamingtcui: Add dll.
...
Based on a patch by Myah Caron.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-04 09:49:56 +02:00
Alexandre Julliard
0aa335b106
winegcc: Look for libraries in the architecture-specific directory.
...
Based on patches by Jacek Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-28 16:25:48 +02:00
Alexandre Julliard
a5aaa41069
makefiles: Install libwine into the architecture-specific directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-28 11:41:27 +02:00
Alexandre Julliard
2801d6341c
makefiles: Install Unix binaries into an architecture-specific directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-28 11:40:39 +02:00
Zebediah Figura
9603fba894
include: Define _WINSOCKAPI_ in winsock2.h.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-27 18:55:24 +02:00
Alexandre Julliard
339ed57643
server: Get rid of the CPU type and functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-27 10:42:04 +02:00
Alexandre Julliard
893febda14
makefiles: Install PE fake dlls in the architecture-specific directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Alexandre Julliard
ee81814f2b
makefiles: Install PE import libraries in the architecture-specific directory.
...
Based on a patch by Jacek Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Alexandre Julliard
c59126d403
makefiles: Install PE files in an architecture-specific directory.
...
Based on a patch by Jacek Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Jacek Caban
5a1d836def
winegcc: Use -idirafter for system include paths.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50996
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-22 21:12:57 +02:00
Andrey Gusev
9b3d5b8e5e
make_specfiles: Add api-ms-win-core-winrt-error-l1-1-* to combase group.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-21 21:00:33 +02:00
Zhiyi Zhang
788fd4ee44
winedump: Support dumping Windows Metafiles.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-20 22:57:11 +02:00
Andrey Gusev
99a5ef720c
make_specfiles: Add a few api-ms-win-core-* to kernel32 group.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-16 22:39:46 +02:00
Zhiyi Zhang
1c35d29ed5
winedump: Dump EMR_STRETCHBLT record.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-14 17:04:35 +02:00
Zhiyi Zhang
2c47d0b58b
winedump: Dump EMR_ALPHABLEND record.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-14 17:04:35 +02:00
Alexandre Julliard
4f04994ef4
makefiles: Only allow includes and defines in pkg-config flags.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50811
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-08 12:18:02 +02:00
Joshua Ashton
11344e2ecb
api-ms-win-shcore-scaling-l1-1-0: Add stub dll.
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-08 12:14:31 +02:00
Joshua Ashton
0ae16ed785
api-ms-win-shcore-scaling-l1-1-1: Move to shcore dllgroup.
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-08 12:14:31 +02:00
Jacek Caban
4f78781299
winegcc: Add Wine include directories before standard directories on search list.
...
This is especially important for msvcrt headers, which need to be used
instead of system ones.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-06 22:46:12 +02:00
Jacek Caban
c7a210bc2f
winegcc: Use paths for found libraries on PE targets when using msvcrt.
...
We use -nodefaultlibs now, so we don't need to worry about GCC additions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-06 22:46:12 +02:00
Nikolay Sivov
7f7fdd6c86
shcore: Added another api-ms-* forwarding dll.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-31 22:16:25 +02:00
Zhiyi Zhang
603cb1c173
winedump: Dump more fields for EMR_EXTTEXTOUTW records.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:46:23 +01:00
Zhiyi Zhang
99f69b4e8b
winedump: Dump EMR_HEADER record.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-24 20:46:23 +01:00
Rémi Bernon
2a7940c97d
widl: Generate typedefs for namespaced struct / enum types.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-23 20:58:45 +01:00
Mark Harmstone
e5c289f29d
mscvpdb.h: Use official names for CodeView constants.
...
Signed-off-by: Mark Harmstone <mark@harmstone.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 18:52:57 +01:00
Rémi Bernon
aa119a1e06
widl: Always check the runtimeclass interfaces presence.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-19 19:55:34 +01:00
Rémi Bernon
7f9143143f
widl: Only register activatable WinRT runtimeclass.
...
Or with a static factory, as Windows.Input.Gamepad for instance.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-17 15:36:48 +01:00
Rémi Bernon
b18a48eb70
include: Include x86intrin.h in msvcrt/intrin.h.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-16 20:36:43 +01:00
Rémi Bernon
a6f214d75a
tools: Relax the dot in module names rules.
...
This should allow modules with dot in their names, while still making
the .dll extension optional. The MODULE variable still determines the
actual output file extension.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 13:13:35 +01:00
Alexandre Julliard
6f68543692
make_unicode: Use codepage 949 to add default mappings to codepage 20949.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 13:13:35 +01:00
Sanghoon Park
fd3a640206
make_unicode: Add support for codepage 20949 (Korean Wansung).
...
Signed-off-by: Sanghoon Park <esifea1908@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 13:13:35 +01:00
Rémi Bernon
e137becb13
widl: Allow runtimeclass to not have a default interface.
...
Or any interfaces, as long as they have a static factory, as MIDL
requires.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 18:43:15 +01:00
Myah Caron
462f5759d1
api-ms-win-core-kernel32-legacy-l1-1-2: Add new dll.
...
Signed-off-by: Myah Caron <qsniyg@protonmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-10 11:18:28 +01:00
Rémi Bernon
31af1aeb78
widl: Add support for WinRT regscript generation.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-04 21:53:53 +01:00
Jacek Caban
e979ee96b6
ntdll: Use xsave compaction in syscall dispatcher.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-03 21:54:45 +01:00
Francois Gouget
5d80ee4b60
winegcc: Add a trailing linefeed to an error() message.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-02 20:42:33 +01:00
Francois Gouget
55ba6262d2
wrc: Remove the trailing linefeed from a parser_error() message.
...
Unlike most other trace and error reporting functions, parser_error()
appends a linefeed to the error message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-02 20:42:16 +01:00
Jacek Caban
af74bd3122
ntdll: Use syscall dispatcher to restore context in NtSetContextThread.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-02 20:41:39 +01:00
Jacek Caban
5d228d6fc9
ntdll: Store x86 YMM context insyscall dispatcher.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-02 20:40:49 +01:00
Rémi Bernon
4b24b6be06
widl: Fix missing delegate declaration namespace.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-02 20:39:48 +01:00
Jacek Caban
ce5f17c892
ntdll: Store FPU and XMM contexts in x86 syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-01 21:13:00 +01:00
Jacek Caban
e341d1f695
ntdll: Restore all non-volatile i386 registers in syscall dispatcher.
...
Based on set_full_cpu_context.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-01 21:13:00 +01:00
Nikolay Sivov
4b2930d3f1
widl: Remove unnecessary assignment (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-01 10:12:54 +01:00
Rémi Bernon
dc65f88654
widl: Generate helper macros for WinRT implementation.
...
This generates additional macros to help keeping implementation simple,
guarded with WIDL_using ifdefs, like this:
#ifdef WIDL_using_Windows_Foo
#define IFooVtbl __x_ABI_CWindows_CFoo_CIFooVtbl
#define IFoo __x_ABI_CWindows_CFoo_CIFoo
#define IFoo_DoFoo __x_ABI_CWindows_CFoo_CIFoo_DoFoo
#endif /* WIDL_using_Windows_Foo */
Implementation files can define the desired WIDL_using preprocessor
macros before including the header, and then implement or use the
interface methods with the simple non-prefixed names instead.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-26 16:25:57 +01:00
Rémi Bernon
5f6fdb1838
widl: Strip last separator in append_namespaces if suffix is NULL.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-26 16:25:55 +01:00
Rémi Bernon
31cbca5f07
widl: Make WinRT nested templates C++98 compatible.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-26 16:25:51 +01:00
Rémi Bernon
6966d7ea08
widl: Fix C++ RuntimeClass string constants declaration.
...
MinGW g++ requires initialized selectany to have extern linkage.
Also, because of the various ways WCHAR may be defined, using an array
initializer is the simplest way to support all cases.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-26 16:25:41 +01:00
Jacek Caban
b04f2689a2
ntdll: Store all non-volatile i386 registers in syscall dispatcher.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-25 22:44:18 +01:00
Jacek Caban
c6d303ca23
ntdll: Reserve space for full i386 context in syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-25 22:43:19 +01:00
Rémi Bernon
41a3087394
widl: Use C++ template implementation for parameterized types.
...
Based on a patch from Steve Lhomme.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-25 22:39:21 +01:00
Rémi Bernon
3556ecd5d7
widl: Write C++ template implementations for parameterized types.
...
Based on a patch from Steve Lhomme.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-25 22:39:21 +01:00
Rémi Bernon
ea9d98082a
widl: Write C++ template declarations for parameterized types.
...
Based on a patch from Steve Lhomme.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-25 22:39:21 +01:00
Alexandre Julliard
abf4747ba7
winebuild: Simplify constant loading on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-24 22:01:42 +01:00
Alexandre Julliard
b1fe783ade
winebuild: Fix relay entry points for Thumb mode.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-24 22:01:42 +01:00
Alexandre Julliard
4ef8e946f1
winebuild: Set Thumb bit in CPSR register on syscall entry.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-24 22:01:42 +01:00
Jacek Caban
a8856381ed
ntdll: Use xsavec in x86_64 syscall dispatcher.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-22 20:19:17 +01:00
Jacek Caban
437bef6ac1
ntdll: Use syscall dispatcher for restoring context in x86_64 NtSetContextThread implementation.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-22 20:19:15 +01:00
Jacek Caban
11e3d43c26
ntdll: Store x86_64 YMM context in syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-19 23:46:30 +01:00
Jacek Caban
a06d60bd5f
winebuild: Factor out output_syscall_dispatcher.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-19 23:46:30 +01:00
Steve Lhomme
49a1cc10d2
widl: Use C name when writing UUID declarations.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-19 23:46:30 +01:00
Steve Lhomme
18f04f569b
widl: Define the C type name as an alias for the C++ qualified name.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-19 23:46:30 +01:00
Steve Lhomme
fc533ddf32
widl: Precompute qualified type names, and use them for C++ interfaces.
...
This is what MIDL does and avoid mismatching and even fixes some compiling issues.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-19 23:46:30 +01:00
Steve Lhomme
a78053743d
widl: Never use the namespace ABI prefix for global types.
...
Otherwise we end up with types like ABI::IInspectable.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-19 23:46:30 +01:00
Rémi Bernon
b1e9326f5a
widl: Compute uuids for parameterized types.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-18 22:39:33 +01:00
Rémi Bernon
c5413e1258
widl: Compute signatures for parameterized types.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban<jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-18 22:39:33 +01:00
Rémi Bernon
fecfd245a1
widl: Support WinRT parameterized delegate type.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban<jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-18 22:39:33 +01:00
Rémi Bernon
2326d7226d
widl: Support WinRT delegate type.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban<jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-18 22:39:33 +01:00
Alexandre Julliard
e27c7e0648
winedump: Print the "prefer native" Wine flag.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-18 11:11:33 +01:00
Alexandre Julliard
ad43872669
winebuild: Add a --prefer-native option to set a Wine-specific flag in the PE header.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-18 11:06:06 +01:00
Jacek Caban
d281c90c4b
winegcc: Properly set debug info type on msvc targets.
...
Fixes a typo from 9faa5eeddd
.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 22:21:13 +01:00
Rémi Bernon
d3c7aa2915
widl: Support WinRT parameterized interface type.
...
This allows parameterized interfaces to be instanciated in declare
blocks, in the same way MIDL does, generating a new interface to the
header from the parameterized type template, replacing its parameters
with the given types.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 22:21:06 +01:00
Rémi Bernon
d5bf8f4e8a
widl: Support partially specialized parameterized type.
...
This allows parameterized types to reference each other with a different
set of parameters. This is required for instance for IIterable<T>, that
needs to reference IIterator<T>.
The partial specialization is recorded by adding a new parameterized
type, referencing the original one as its template. The parameterized
type chain will be resolved all at once when the type is declared.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 21:42:18 +01:00
Rémi Bernon
94b5af4b34
widl: Replace type_list_t with typeref_list_t.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 21:42:18 +01:00
Rémi Bernon
84966c9b59
widl: Rename ifref_list_t to typeref_list_t.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 21:42:18 +01:00
Rémi Bernon
7987c6f9ba
widl: Rename ifref_t to typeref_t.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 21:42:18 +01:00
Rémi Bernon
db580fe9db
widl: Rename ifref_t iface member to type.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 21:42:18 +01:00
Jacek Caban
be8729c9f5
winebuild: Restore x86_64 FPU context and nonvolatile registers in syscall dispatcher.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 15:47:28 +01:00
Jacek Caban
9b6f715b28
winebuild: Restore all x86_64 control registers in syscall dispatcher.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 15:46:37 +01:00
Jacek Caban
f72940de8e
ntdll: Store segment registers in x86_64 syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 15:45:51 +01:00
Jacek Caban
4e5b61bb06
ntdll: Store stack pointer in x86_64 syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 15:45:34 +01:00
Jacek Caban
accf7a0908
ntdll: Store instruction pointer register in x86_64 syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 15:45:29 +01:00
Jacek Caban
9bdd02de0c
ntdll: Store eflags in x86_64 syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 15:45:14 +01:00
Jacek Caban
6d2f08cfcb
ntdll: Reserve space for all registers in x86_64 syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 15:45:11 +01:00
Jacek Caban
877f06d123
winebuild: Remove no longer needed stack alignment in x86_64 syscall dispatcher.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 12:00:04 +01:00
Jacek Caban
8f50dde9cd
ntdll: Store entire XMM context in x86_64 syscall frame.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-17 11:59:40 +01:00
Andrew Boyarshin
a55a37d1da
widl: Support midl_pragma default option.
...
Signed-off-by: Andrew Boyarshin <andrew.boyarshin@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-16 23:01:38 +01:00
Jacek Caban
6d9b331184
winebuild: Don't use llvm-lib to build static libs containing importlibs.
...
It's not supported by LLVM 10.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50653
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 16:10:53 +01:00
Rémi Bernon
6341546fde
widl: Introduce new strappend helper.
...
And use it for format_namespace to grow buffer as needed.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 14:46:32 +01:00
Rémi Bernon
ed21c29481
widl: Support WinRT parameterized type parsing.
...
And add IVectorView<T> and IIterator<T> parameterized interfaces to
windows.foundation.idl for illustration and future use. They won't
generate any additional code until they are fully specialized.
This is a WIDL-specific feature, but MIDL has some magic knowledge of
these Windows.Foundation.Collections interface templates, and we need a
way to instruct WIDL about them too.
Having these interfaces declared in the IDL, guarded with __WIDL__ ifdef
is easier and more flexible than re-creating the types by hand in WIDL
source.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-12 14:46:29 +01:00
Jacek Caban
8c2ad8e403
winebuild: Use lld-link for static libraries on msvc target.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-11 10:11:15 +01:00
Andrew Boyarshin
5423e0d9e6
widl: Fix handling of output_name in option parsing.
...
Do not overwrite explicitly stated paths, such as header_name or
proxy_name. Instead, use output_name when specified as a fallback.
Signed-off-by: Andrew Boyarshin <andrew.boyarshin@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-09 21:16:34 +01:00
Rémi Bernon
daba929a52
widl: Support WinRT requires keyword.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-09 21:16:16 +01:00
Rémi Bernon
1442ddf942
widl: Support WinRT static attribute parsing.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-09 21:16:14 +01:00
Rémi Bernon
30129c2837
widl: Support WinRT activatable attribute parsing.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-09 21:16:11 +01:00
André Hentschel
9419eadd04
wrc: Add PPC64 support.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-09 13:05:31 +01:00
Timothy Pearson
fe723c2673
widl: Add PPC64 support.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-09 13:03:47 +01:00
Rémi Bernon
2bfcfcc0a9
widl: Support referencing qualified interface names.
...
And split the dispinterface case, which is not supported in WinRT mode.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-08 20:09:21 +01:00
Rémi Bernon
509daf4d23
widl: Fold inherit cases by using typename rule in qualified_type.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-08 20:09:19 +01:00
Rémi Bernon
374321f836
widl: Remove aNAMESPACE token from the lexer.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-08 20:09:15 +01:00
Rémi Bernon
f5b7a76b28
widl: Disallow qualified types in expressions.
...
MIDL WinRT mode only supports a limited subset of original IDL syntax
anyway, and this will save some conflicts when removing the lexer trick
for namespaces.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-08 20:09:12 +01:00
Rémi Bernon
47a256c648
widl: Use explicit namespace parameter for qualified names.
...
Instead of buggy lookup namespace stack.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-08 20:09:07 +01:00
Rémi Bernon
f76f3d152f
widl: Add explicit namespace parameter to find_type_or_error.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-08 20:09:04 +01:00
Rémi Bernon
36597eda3d
widl: Fold aIDENTIFIER / aKNOWNTYPE rules together.
...
Splitting t_ident rule as typename / m_typename rules.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 22:53:46 +01:00
Rémi Bernon
6f1308cd62
widl: Factor and cleanup module type declaration and definition.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 22:53:46 +01:00
Rémi Bernon
62c58eb8a0
widl: Factor and cleanup apicontract type declaration and definition.
...
And remove unused check_def helper.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 22:53:46 +01:00
Rémi Bernon
ce14877436
widl: Factor and cleanup dispinterface type declaration and definition.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 22:53:46 +01:00
Rémi Bernon
f8684cf953
widl: Factor and cleanup interface type declaration and definition.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 22:53:46 +01:00
Rémi Bernon
621b4fa697
widl: Distinguish interface declarations from interface references.
...
Interface referencing should probably check for a previous type
declaration, but Wine IDLs currently have many places where this is
broken.
This is for instance the case when a coclass use the inner interface
statement to declare an interface without any previous declaration.
And in mimeole.idl, coclass are being declared with the same name as
their interface, to generate the corresponding CLSID.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 23:11:22 +01:00
Rémi Bernon
7a01eb2aad
widl: Factor and cleanup runtimeclass type declaration and definition.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 23:11:22 +01:00
Rémi Bernon
84b7faeb52
widl: Factor and cleanup coclass type declaration and definition.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 23:11:22 +01:00
Rémi Bernon
6a1b6a20a3
widl: Remove constant t parameter from find_type_or_error.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 23:11:22 +01:00
Rémi Bernon
b3f807a142
widl: Remove useless find_type_or_error2 helper.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 23:11:22 +01:00
Alexandre Julliard
928a22cd02
server: Add a data type for generic access mappings.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-04 21:25:32 +01:00
Rémi Bernon
98fcca256a
widl: Generate WinRT runtimeclass name constants.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:00:05 +01:00
Rémi Bernon
8233b3d537
widl: Support WinRT eventadd/eventremove attributes.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 10:50:17 +01:00
Rémi Bernon
1a62712e25
widl: Support WinRT flags attribute parsing.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 10:50:12 +01:00
Rémi Bernon
f46c077d5e
widl: Support WinRT runtimeclass type parsing.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-28 09:41:46 +01:00
Rémi Bernon
73e0f5e212
widl: Support WinRT exclusiveto attribute parsing.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-26 19:26:22 +01:00
Rémi Bernon
1abdd8c89a
widl: Support WinRT mta threading attribute parsing.
...
As an alias to free-threaded model.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-26 19:26:19 +01:00
Jacek Caban
ea5e89a545
winebuild: Make mingw a separated platform from msvc.
...
Based on winegcc.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-26 09:02:04 +01:00
Rémi Bernon
2129e335f2
widl: Support WinRT marshaling_behavior attribute parsing.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-25 21:04:04 +01:00
Rémi Bernon
d90dc11d1a
widl: Remove unnecessary WinRT type comments.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-25 21:03:58 +01:00
Alexandre Julliard
852c9c69de
makefiles: Add missing dependency to wrc for test dll resources.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-24 21:58:53 +01:00
Nikolay Sivov
bea9c706eb
dwrite/arabic: Set per-glyph action.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-22 18:33:32 +01:00
Alexandre Julliard
7c909489b4
winegcc: Pass the same winebuild args to all winebuild invocations.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-22 17:34:36 +01:00
Nikolay Sivov
ea1afd6597
make_unicode: Remove unused variable.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Alexandre Julliard
e137063394
include: Add a couple of dll characteristics.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Alexandre Julliard
fc7c3b51ac
ntdll: Always inline NtCurrentTeb() on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Nikolay Sivov
9c11fc642f
make_unicode: Make it explicit what other default joining type is.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 22:11:51 +01:00
Nikolay Sivov
016eeb5109
gdi32/uniscribe: Get rid of shaping group values in Arabic shaping data table.
...
It's not used right now, Syriac specific groups will be accomodated
as additional joining types.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 22:11:40 +01:00
Nikolay Sivov
f734d98a98
gdi32/uniscribe: Merge Arabic joining types C and D.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-20 22:11:15 +01:00
Alexandre Julliard
7c48d8d44b
winebuild: Support non-PIC mode for ARM targets.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 09:42:30 +01:00
Alexandre Julliard
c1a700f018
winebuild: Generate Thumb2-compatible assembly code on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 09:42:26 +01:00
Alexandre Julliard
90ac46fe33
winebuild: Simplify ARM64 import thunks.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 13:02:09 +01:00
Martin Storsjo
dc46af7245
winebuild: Pass -m options to dlltool for arm and arm64.
...
This allows using the arch independent llvm-dlltool without the
llvm-mingw specific <triple>-dlltool wrappers.
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-12-21 11:56:44 +01:00
Martin Storsjo
e9fa452ba3
asm: Separate .def/.scl/.type/.endef with newlines instead of semicolons.
...
When targeting arm64 in MSVC mode, LLVM treats semicolons in assembly
as comment char, instead of as statement separator (contrary to in
mingw mode, where semicolons still work as separator). In generated code,
there's no need to keep these directives on one single line though, so
just separate them with newlines.
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-12-21 11:56:29 +01:00
Jacek Caban
6653a381cb
widl: Don't apply call_as methods to async interface.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-18 16:25:02 +01:00
Alexandre Julliard
74aa42a529
makefiles: Make the tests also depend on the Unix library of the tested module.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-18 14:38:47 +01:00
Jacek Caban
fcf545f449
winapi: Use __alignof__ on clang.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-16 15:30:07 +01:00
Alexandre Julliard
1a16b9e9aa
makefiles: Add support for Automake-style silent make rules.
...
Based on a patch by Jeff Smith.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49841
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-11 16:12:23 +01:00
Alexandre Julliard
4e9f855be5
winegcc: Look for ntdll.so instead of libwine.so to find the library directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-08 22:25:59 +01:00
Alexandre Julliard
497c902857
makefiles: Get rid of the libwine.so symlink.
...
We no longer need to link to libwine.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-04 11:29:23 +01:00
Jacek Caban
727168a9e1
makedep: Use -fno-builtin for crt modules.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 21:00:22 +01:00
Alexandre Julliard
107103e2bd
wpp: Remove some dead code.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 20:18:38 +01:00
Rémi Bernon
54035a2101
widl: Support WinRT contract attribute.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:50:04 +01:00
Rémi Bernon
ee490ee26c
widl: Support WinRT apicontract type.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:49:52 +01:00
Rémi Bernon
19b5f3e060
widl: Support WinRT contractversion attribute parsing.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:49:49 +01:00
Rémi Bernon
13592f0cdb
widl: Add abi_prefix parameter to format_namespace.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:49:47 +01:00
Alexandre Julliard
0b9963ad34
makedep: No longer use wine/port.h.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 10:43:17 +01:00
Kevin Puetz
48cccee394
winebuild: Find WinMain/wWinMain in static libraries.
...
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-30 22:18:21 +01:00
Kevin Puetz
bf5893f489
winebuild: Find main/wmain in static libraries.
...
Have the winebuild -spec.o include an undefined .globl referencing
symbols we know the winecrt0 entry point will eventually reference,
so ld knows about that need while scanning library archives.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-30 22:18:21 +01:00
Kevin Puetz
a1078d4770
winebuild: Select all __wine_spec_exe* entry inside winebuild.
...
Override --entry in winegcc only when it applies to any compiler
(e.g. kernel drivers or msvcrt) but leave spec details to winebuild.
Forward -municode so winebuild will know which to use.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-30 22:18:20 +01:00
Alexandre Julliard
875f506b33
libport: Move the char type table back to libwine and stop updating it.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-30 19:01:55 +01:00
Alexandre Julliard
c7196dc945
libport: Move the case mapping table back to libwine and stop updating it.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-30 19:01:55 +01:00
Kevin Puetz
9faa5eeddd
winegcc: Implement -Wl,--out-implib.
...
This allows a CMake toolchain (or other caller) to treat winegcc like MinGW,
specifying that it produce a separate file for imports, e.g.
set(CMAKE_IMPORT_LIBRARY_PREFIX lib)
set(CMAKE_IMPORT_LIBRARY_SUFFIX .a)
string(APPEND CMAKE_C_CREATE_SHARED_LIBRARY " -Wl,--out-implib,<TARGET_IMPLIB>")
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-26 23:25:38 +01:00
Alexandre Julliard
b3a38fef26
winebuild: Initialize entry point to avoid a compiler warning.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-26 23:25:38 +01:00
Alexandre Julliard
b636f9816f
krnl386: Move the 16-bit stack out of the WOW32Reserved field.
...
Based on a patch by Sebastian Lackner.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-26 21:31:53 +01:00
Alexandre Julliard
043489456c
ntdll: Make x86_64 syscall thunks position independent.
...
Based on a patch by Paul Gofman.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-25 21:39:19 +01:00
Jacek Caban
e84394764a
makedep: Use short debug file names.
...
Fixes gitignore entries for symbol files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-19 21:23:55 +01:00
Alexandre Julliard
be8a81b54c
makefiles: Allow modules to link to their own import library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-19 21:23:22 +01:00
Alexandre Julliard
27b20c1db5
makefiles: Don't add a default crt lib for msvcrt dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-19 21:23:21 +01:00
Kevin Puetz
997439967f
widl: Allow adding the same custdata GUID multiple times in a typelib.
...
e.g. using the same kind of custdata in multiple interfaces
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-18 22:27:51 +01:00
Kevin Puetz
02b6df007a
widl: Write ATTR_CUSTOM into typelib.
...
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-18 22:27:51 +01:00
Kevin Puetz
7afd550f34
widl: Parse attribute custom(guid,expr).
...
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-18 22:27:51 +01:00
Rémi Bernon
a35ca92362
widl: Prefer mangled name over typedef in WinRT mode.
...
For types under a non-global namespace.
MIDL generates prefixed mangled name for every use of enum, struct and
union types. When the types are in the global namespace, the typedef
name is used instead.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-16 21:06:18 +01:00
Rémi Bernon
a154a42c0d
widl: Restrict some keywords to WinRT mode only.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-16 21:06:18 +01:00
Rémi Bernon
92eb5ef5a1
widl: Support repetition for some attributes.
...
Some attributes can be specified multiple times, this is the case for
instance for "custom" attribute, as well as WinRT "static".
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: PuetzKevinA@JohnDeere.com
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-16 21:06:18 +01:00
Zebediah Figura
52dc0ccf6d
makefiles: Disable implicit rules.
...
This improves the time of a full-tree build with no out-of-date objects from
~3.7s to ~0.7s on one of my development machines.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-16 17:51:30 +01:00
Alexandre Julliard
4650dff5c4
winebus.sys: Move winebus.inf into the module resources.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-11 11:04:06 +01:00
Nikolay Sivov
b9178da586
gdi32: Merge in Uniscribe functionality.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-09 20:15:11 +01:00
Alistair Leslie-Hughes
8f81123f4f
srvcli: Add stub dll.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-03 14:53:35 +01:00
Alexandre Julliard
d5c089f5fa
winebuild: Set PE timestamps to a hash of the file name.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44061
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-29 22:23:08 +01:00
Eric Kohl
ba72ef6c22
widl: Add the [allocate] acf attribute.
...
Signed-off-by: Eric Kohl <eric.kohl@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-27 21:04:46 +01:00
Alexandre Julliard
ec99ba1b29
makefiles: Explicitly create destination dirs when installing symlinks.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50039
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-23 20:16:53 +02:00
Alexandre Julliard
3eaf036b10
winebuild: Add __imp_ label on the import data for delayed imports.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-14 21:33:17 +02:00
Alexandre Julliard
aabd2b54b2
makefiles: List all possible targets in the stub makefiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-11 21:36:04 +02:00
Nikolay Sivov
1ca4536f7e
nls: Build codepage data for CP708.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 17:22:56 +02:00
Martin Storsjo
559d502699
winebuild: Add unwind info to arm64 syscall stubs.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-29 12:02:46 +02:00
Alexandre Julliard
f691bdb6bf
makefiles: Don't build Unix object files on Windows.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 13:44:43 +02:00
Nikolay Sivov
d7b166976d
widl: Allow [restricted] for coclass-es.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 15:03:32 +02:00
Nikolay Sivov
fe5bfa5b71
widl: Add null source pointer check for typelib writer.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38964
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 15:03:28 +02:00
Nikolay Sivov
0a49202109
widl: Allow [hidden] attribute on enum members.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-23 18:42:51 +02:00
Nikolay Sivov
8eb756c699
widl: Enable [hidden] attribute for enums.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-23 18:42:31 +02:00
Paul Gofman
b936df428d
wmc: Add Dxgi facility.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-21 21:42:13 +02:00
Kevin Puetz
7955b2e526
widl: Remove duplicate '\n\n' in midl_info_guid.
...
Per standard, ctime already ends with '\n\0', so this doubled it.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-21 12:54:17 +02:00
Kevin Puetz
44ccc4f638
widl: All VARDESC fields of TKIND_UNION should have oInst=0.
...
Also fix uninitialized value in this field for TKIND_DISPATCH.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 15:35:03 +02:00
Alexandre Julliard
0b9c7eb295
makefiles: Define WINE_UNIX_LIB when building Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 15:05:56 +02:00
Alexandre Julliard
c670df976c
makefiles: Don't use default imports for Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 15:03:08 +02:00
Alexandre Julliard
c73ae99ff4
makefiles: Only add default libraries for Unix builds.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 15:02:00 +02:00
Nikolay Sivov
0dd6f1ef35
widl: Emit a guard around library contents.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:40 +02:00
Alexandre Julliard
468af5bbb4
makefiles: Remove directory variables that are redundant with non-recursive make.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:40 +02:00
Alexandre Julliard
feb5229091
makefiles: Remove .. components from generated paths.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:40 +02:00
Alexandre Julliard
1dd3051cca
makefiles: Generate a single non-recursive makefile at the top level.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:39 +02:00
Alexandre Julliard
f2d60c16ea
makefiles: Add separate variable to keep track of source dir font files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 15:49:45 +02:00
Alexandre Julliard
9a542f9dda
makefiles: Remove support for generating a single makefile.
...
We need to handle all makefiles at once for proper import lib
dependencies.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 15:49:45 +02:00
Alexandre Julliard
3f330361d2
makefiles: Fix a few more object directory references.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 15:49:45 +02:00
Alexandre Julliard
9da7d620ef
makefiles: Also store the basename without object dir for generated files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 12:46:22 +02:00
Alexandre Julliard
5d2596ad8a
makefiles: Explicitly import the CRT library also for test dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-10 22:05:00 +02:00
Alexandre Julliard
96e5ac876f
makefiles: Build extra targets explicitly if they are not a dependency.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
5adb93c654
makefiles: Add some missing object dir references.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
82acb284bd
makefiles: Store .pot files in a separate variable.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
a204ad557d
makefiles: Expand makedep path at compile time.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
b211bd7b64
makefiles: Add dependencies for the import lib symlinks.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
b07cc3fe0c
makefiles: Get rid of rpath support.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
a9a08dbc3d
libwine: Remove wine/library.h.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 16:26:17 +02:00
Rémi Bernon
280932536f
widl: Support fully qualified names in WinRT mode.
...
Interfaces are going to reference each other across namespaces, so this
implements a type lookup with the full name.
It supports the following idl syntax in WinRT mode:
#ifdef __WIDL__
#pragma winrt ns_prefix
#endif
import "wtypes.idl";
namespace Windows {
namespace Foo {
[object]
interface IFoo {}
}
namespace Bar {
[object]
interface IBar { HRESULT DoBar([in] Windows.Foo.IFoo *foo); }
}
}
That was previously failing to parse the Windows.Foo.IFoo part and to
lookup the corresponding type.
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
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