Commit Graph

5728 Commits

Author SHA1 Message Date
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