Commit Graph

6157 Commits

Author SHA1 Message Date
Alexandre Julliard 603130cc38 winebuild: Align raw data size instead of virtual size in PE sections.
Use the aligned size to set code/data sizes.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-02 10:54:10 +01:00
Alexandre Julliard bf8c5afef1 api-ms-*: Get rid of the apiset placeholder files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-23 10:23:53 +01:00
Rémi Bernon 3e16b37475 widl: Support declaring multiple namespaces at once.
Using the namespace A.B.C {} syntax, used in a few some places in WinRT
IDLs.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-22 18:20:22 +01:00
Alexandre Julliard 8a3064899a winebuild: Add support for building apiset data.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 22:10:20 +01:00
Alexandre Julliard 6f1fd16f92 winedump: Add dumping of the .apiset PE section.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 11:03:22 +01:00
Alexandre Julliard 4a5a3ba702 kernel32: Move some more console functions to kernelbase.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 11:03:22 +01:00
Alexandre Julliard 1c2e3fc68a makedep: Add support for winebuild --data-only option.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 22:05:33 +01:00
Alexandre Julliard 1662af11a4 winegcc: Add support for winebuild --data-only option.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 22:05:33 +01:00
Alexandre Julliard 39f6ab55a9 winebuild: Add support for generating data-only DLLs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 22:05:33 +01:00
Alexandre Julliard 3eca3516ad secur32: Add stubs for DeleteSecurityPackageA/W.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 21:43:46 +01:00
Alexandre Julliard b331ffcded api-ms-*: Forward to cryptsp instead of advapi32.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:49 +01:00
Alexandre Julliard 23791eb11d api-ms-*: Forward to sechost instead of advapi32.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:45 +01:00
Alexandre Julliard c239f38db4 api-ms-*: Forward to cfgmgr32 instead of setupapi.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:41 +01:00
Alexandre Julliard e2187d4fe1 api-ms-*: Forward to shcore instead of shell32.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:37 +01:00
Alexandre Julliard 6e90c16e17 api-ms-*: Forward to shcore instead of shlwapi.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:33 +01:00
Alexandre Julliard 21536c066a api-ms-*: Forward to combase instead of ole32.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:29 +01:00
Alexandre Julliard 7df8967358 api-ms-*: Forward to kernelbase instead of version.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:25 +01:00
Alexandre Julliard eb84ed07d9 api-ms-*: Forward to kernelbase instead of user32.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:21 +01:00
Alexandre Julliard 485f7003e6 api-ms-*: Forward to kernelbase instead of shlwapi.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:17 +01:00
Alexandre Julliard 84ac2e6abf api-ms-*: Forward to kernelbase instead of advapi32.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:12 +01:00
Alexandre Julliard ae5ebeaff9 api-ms-*: Forward to kernelbase instead of kernel32.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 22:59:08 +01:00
Alexandre Julliard 0c095ccc2d make_specfiles: Move some ApiSet dlls to the ntdll section.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 17:17:42 +01:00
Alexandre Julliard ef83ca1678 make_specfiles: Sort the ApiSet dlls by name.
To make it easier to find a specific one.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-15 16:34:17 +01:00
Stefan Dösinger e5041acfa2 makedep: Fix some signed vs unsigned msvc warnings.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:33 +01:00
Alexandre Julliard 62f9bd39a2 tools: Consistently use xmalloc/xrealloc/xstrdup everywhere.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-08 20:24:14 +01:00
Alexandre Julliard 78ef8cf443 wrc: Use compare_name_id() for resource translations.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-08 20:24:14 +01:00
Alexandre Julliard 2c42d8b9a5 winebuild: Store length of Unicode strings explicitly.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-08 20:24:14 +01:00
Alexandre Julliard 7d3938e811 make_xftmpl: Use the standard output buffer routines.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-08 20:24:14 +01:00
Andrey Gusev 0894a4ad48 api-ms-win-security-lsalookup-ansi-l2-1-0: Add dll.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-07 13:53:31 +01:00
Kevin Puetz ccf7b4459b winegcc: --out-implib needs to propagate -m32/-m64 to winebuild.
This was already passed through for linking, and for spec.o files,
but was overlooked when implementing -Wl,--out-implib

Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-04 09:48:05 +01:00
Alexandre Julliard 26a3472b34 makefiles: Disable printf format warnings for non-PE msvcrt modules.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 21:09:19 +01:00
Alexandre Julliard 0c0e8b576e makefiles: Force -Wformat for PE modules when using 'long' types.
Suggested by Eric Pouech.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:40:44 +01:00
Alexandre Julliard f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Alexandre Julliard ae2693e2c4 include: Use long type by default in GUID definition.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 17:56:07 +01:00
Rémi Bernon 21fa9fa36a widl: Fix sign handling in parameterized types signatures.
Unspecified sign should be mapped to signed integer / char.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Rémi Bernon 1af44e2670 widl: Use "string" for HSTRING in signatures for generated UUID.
Fixes the UUID of IVectorView<HSTRING*> to match MIDL for instance.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Rémi Bernon 1f2614c60b widl: Fix nested parameterized types C / short name output.
We append type->name from each parameter when constructing the c_name
of parameterized type. When the parameter is itself a parameterized type
this field contains C++-like name, with template brackets.

Instead this precomputes the names of parameterized types whenever they
are used as a parameter. In this case the format is the same as the C
name, except that __C is used as a namespace separator, instead of _C,
and that there's no namespace or abi prefix included.

Shorthands need to be applied too, altough they have to match the __C.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Rémi Bernon b2a1e381d8 widl: Clarify declaration type names vs (reference) type names.
Declaration type names prefer unqualified names whereas reference type
names prefer fully qualified names.

This makes C++ code use fully qualified names when referencing a type,
fixing cases where types from other namespaces are used. It also allows
to skip the enum / struct / union type prefix in WinRT C++ code.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Rémi Bernon 86c565cf0e widl: Do not generate C++ enum typedefs in WinRT mode.
MIDL generates enum typedefs without a prior type declaration, as well
as using explicit enum underlying type specifier. None of this is
supported in MinGW.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Bernhard Kölbl 64d5feb4ce widl: Add support for the [overload] attribute.
The attribute is used by WinRT and doesn't have any
effect on the generated headers.

Signed-off-by: Bernhard Kölbl <besentv@gmail.com>
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Alexandre Julliard 7d7322671c server: Define a server-side structure for LUID_AND_ATTRIBUTES.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 11:55:40 +01:00
Huw Davies f8adbf35ca widl: Remove the uuid_t typedef which causes conflicts on macOS.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 09:27:15 +01:00
Alexandre Julliard a7f0e61e6c widl: Avoid using Windows types where possible.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 12:27:47 +01:00
Alexandre Julliard dbfdcb13ff wrc: Avoid using Windows types where possible.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 12:27:42 +01:00
Bernhard Kölbl 22d27236ce widl: Allow optional interface parameter on the [activatable] attribute.
As per MIDL 3.0. Needed for some WinRT runtime classes.

Signed-off-by: Bernhard Kölbl <besentv@gmail.com>
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 10:10:52 +01:00
Alexandre Julliard c09a5da157 wrc: Add a workaround for older bison versions.
Bison < 3.6 doesn't apply api.prefix to YYEMPTY.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 23:38:08 +01:00
Alexandre Julliard f4af3134de makefiles: Specify the bison prefix directly in the source files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard 363d078f46 makefiles: Add a maintainer-clean target.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard 3c0a2fa5a6 makefiles: Add dependencies for files generated in maintainer mode.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard 4c7a2b4cbb makefiles: Compare the full path when looking for generated include files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00