Commit graph

6444 commits

Author SHA1 Message Date
Rémi Bernon
b9375920f9 winebuild: Introduce a new --without-dlltool winebuild flag.
Set it only when -Wl,--delay-load linker flag is not supported to keep using
dlltool in LLVM builds, for MSVC-like import libs.
2022-11-08 20:07:52 +01:00
Rémi Bernon
81cef17280 gitlab: Add a 2s wait between macOS build iterations.
To avoid cases where git rebase modifies some files very shortly after
the build has completed and ends up with the same mtime as the just
built files. This can lead to spurious link errors when functions are
moved around.
2022-11-08 20:07:52 +01:00
Alexandre Julliard
8f81273904 kernelbase: Update timezone data to version 2022f. 2022-11-08 20:07:51 +01:00
Alexandre Julliard
198de0dcb8 nls: Update locale data to CLDR version 42. 2022-11-08 20:07:51 +01:00
Rémi Bernon
9d1175a464 winebuild: Avoid calling asm_name twice in function arguments.
It returns a static buffer pointer and will free the first returned
pointer on the second call.
2022-11-04 21:53:54 +01:00
Rémi Bernon
fd7cee3e31 winebuild: Split output_static_lib into output_(import|static)_lib. 2022-11-03 18:33:09 +01:00
Rémi Bernon
f35fbc5be9 winebuild: Use asm_name to add underscore prefix in asm_globl. 2022-11-03 18:33:09 +01:00
Rémi Bernon
6932138f17 winebuild: Split get_link_name into a separate get_abi_name helper. 2022-11-03 18:33:09 +01:00
Alexandre Julliard
1e58882e77 makedep: Always generate a fake module for the native architecture.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53861
2022-11-02 11:57:59 +01:00
Martin Storsjö
6705a71045 winegcc: Prefer -Wl,--pdb=<file> over -Wl,-pdb,<file>.
The previously used syntax, -Wl,-pdb,<file>, was the originally
supported one in lld (since 2018). Later (in 2019) the second
syntax was added, allowing both -Wl,-pdb=<file> and -Wl,-pdb,<file>.
(This other parameter syntax allows easier distinguishing an empty
argument, for letting the linker implicitly pick the file name.)

Move over to using the more modern syntax - reducing the usage of
the old form of the option. This potentially allows deprecating
the original syntax and maybe allows using --pdb as a boolean
flag for implying an automatically named PDB file (which currently
requires using the awkward syntax "--pdb=").

Also prefer the long two dashes form, i.e. --pdb instead of -pdb;
the single dash form is only allowed by getopt when there
are no conflicts with single-letter options, while the form with
two dashes is unambiguous.
2022-11-01 20:46:22 +01:00
Alexandre Julliard
b1f59bc679 makefiles: Add support for multiple PE architectures. 2022-11-01 10:29:49 +01:00
Jacek Caban
4920d08e5f makedep: Always use -mno-cygwin for extra test modules. 2022-10-31 21:22:38 +01:00
Alexandre Julliard
abee72f32d makedep: Remove arch directories on distclean. 2022-10-31 20:41:45 +01:00
Alexandre Julliard
37910bebfd configure: Remove no longer needed check for dlltool. 2022-10-31 20:41:44 +01:00
Alexandre Julliard
6a91264918 makefiles: Store PE objects in subdirectories in the build tree.
This will make it possible to build multiple PE architectures.
2022-10-26 15:03:05 +02:00
Alexandre Julliard
8d43170b9f makedep: Make the disabled flag architecture-generic. 2022-10-26 11:03:51 +02:00
Alexandre Julliard
6cfdd7e97c makedep: Add a helper function to build an arch-specific module name. 2022-10-26 11:03:42 +02:00
Alexandre Julliard
5574c22d54 makedep: Add a helper function to get a cross-compilation make variable. 2022-10-26 11:03:33 +02:00
Alexandre Julliard
7d4ce928ef makedep: Add a helper function to build a source file for one architecture. 2022-10-26 11:03:20 +02:00
Esme Povirk
4493b10d17 mscoree: Update Wine Mono to 7.4.0. 2022-10-25 18:40:49 +02:00
Alexandre Julliard
6c65fb9cb3 makedep: Make the resource files architecture-generic. 2022-10-25 11:09:57 +02:00
Alexandre Julliard
6fb5e4d99a makedep: Add support for architecture-specific IDL objects. 2022-10-25 11:08:56 +02:00
Alexandre Julliard
2094dd96e6 makedep: Add support for architecture-specific sources. 2022-10-25 11:08:26 +02:00
Alexandre Julliard
718c57cab4 makedep: Make the makefile targets architecture-generic. 2022-10-25 11:08:06 +02:00
Alexandre Julliard
7bffe6d68b makedep: Make the import library files architecture-generic. 2022-10-25 11:07:45 +02:00
Alexandre Julliard
cb5268c729 makedep: Make the object files architecture-generic. 2022-10-25 11:04:30 +02:00
Alexandre Julliard
9795a01918 makedep: Make the installation directories architecture-generic. 2022-10-25 11:03:54 +02:00
Michael Stefaniuc
43eccadceb makedep: Use ARRAY_SIZE instead of open coding it. 2022-10-25 10:59:05 +02:00
Michael Stefaniuc
191bc277a1 wrc: Use ARRAY_SIZE instead of open coding it. 2022-10-25 10:59:05 +02:00
Michael Stefaniuc
534a3082ef wmc: Use ARRAY_SIZE instead of open coding it. 2022-10-25 10:59:05 +02:00
Michael Stefaniuc
b46eef7e2a winegcc: Use ARRAY_SIZE instead of open coding it. 2022-10-25 10:59:05 +02:00
Michael Stefaniuc
7029bba31a widl: Use ARRAY_SIZE instead of open coding it. 2022-10-25 10:59:05 +02:00
Alexandre Julliard
25735da0de makedep: Make the extra C flags architecture-generic. 2022-10-24 16:19:47 +02:00
Alexandre Julliard
815e766d9d makedep: Make the delay load flags architecture-generic. 2022-10-24 16:19:47 +02:00
Alexandre Julliard
55e2335f64 makedep: Make the debug flags architecture-generic. 2022-10-24 16:19:47 +02:00
Alexandre Julliard
afc286fb51 makedep: Make the target flags architecture-generic. 2022-10-24 16:19:47 +02:00
Alexandre Julliard
24d791e2e9 makedep: Pass a generic architecture value instead of the is_cross flag to various helpers. 2022-10-24 16:19:47 +02:00
Piotr Caban
9e74a249df winedump: Handle NULL in get_unicode_str. 2022-10-19 21:16:29 +02:00
Alexandre Julliard
4172c04826 nls: Allow specifying a locale's native digits.
Inspired by a patch from Nikolay Sivov.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53770
2022-10-19 18:48:30 +02:00
Alexandre Julliard
b591b3167c nls: Update locales that have been added in recent Windows versions. 2022-10-17 12:56:47 +02:00
Piotr Caban
0e49547c7a winedump: Add support for EMRI_METAFILE_EXT records. 2022-10-17 11:26:51 +02:00
Piotr Caban
893ac00873 winedump: Add prefix when dumping EMF files. 2022-10-17 11:26:51 +02:00
Piotr Caban
4d649c6232 winedump: Dump metafiles in EMF spool files. 2022-10-17 11:26:51 +02:00
Piotr Caban
d745c8d4a0 winedump: Don't use static offset in dump_emfrecord. 2022-10-17 11:26:51 +02:00
Piotr Caban
cf78df3612 winedump: Fix buffer overflow in debugstr_wn helper. 2022-10-17 11:26:51 +02:00
Piotr Caban
cfbe32d557 winedump: Add initial EMF spool files support. 2022-10-17 11:26:50 +02:00
Rémi Bernon
c90e03e3cb makedep: Link with imported libs before delay imported libs.
In order to favor direct imports over delayed imports, for instance when
the delay imported module forwards symbols from the imported module.
2022-09-30 18:34:14 +02:00
Rémi Bernon
214223edc3 makedep: Link default imports separately from direct imports. 2022-09-30 18:34:14 +02:00
Rémi Bernon
c1a0b74d98 makedep: Add an import type parameter to add_import_libs. 2022-09-30 18:34:14 +02:00
Zebediah Figura
e654b631f2 widl: Generate "static inline" instead of "static FORCEINLINE" for COM inline wrappers.
mingw-w64 defines __forceinline (and therefore FORCEINLINE) as
"extern __inline__ __attribute__((__always_inline__,__gnu_inline__)). This means
that COM inline wrappers specify multiple storage classes and hence cannot be
compiled.

Wine defines FORCEINLINE simply as "inline" (and uses "static" everywhere), so
this is a non-issue for Wine. However, since Wine and mingw-w64 share the source
code of widl and of most IDL headers, this patch changes the definition for both
projects.

There's no reason to force inlining here, especially since the wrappers need to
be manually enabled, and we don't need to match PSDK semantics where these
wrappers don't even exist.

In practice, use "__inline__" instead of "inline" for GNU C targets, to preserve
compatibility with C89 in mingw-w64 headers.
2022-09-28 15:27:51 +02:00
Eric Pouech
a014f19bdd winedump: Dump PDB public symbols' stream.
Add relevant structures to include/mscvpdb.h.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-27 18:29:34 +02:00
Eric Pouech
805ffc8adb winedump: Dump global hash table out of PDB symbols' stream.
Introduce relevant structures in include/wine/msvcpdb.h.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-27 18:29:27 +02:00
Alexandre Julliard
9c5b2bd62c gitlab: Run the full test suite on merge requests. 2022-09-27 18:14:33 +02:00
Julian Klemann
c8c7ff640a widl: Use "cinterface(IInspectable)" for IInspectable signature.
Fixes the UUID of ITypedEventHandler<DeviceWatcher*, IInspectable*> to
match MIDL.
2022-09-14 22:38:34 +02:00
Alexandre Julliard
7ab46c4f21 unicode: Update to Unicode 15.0.0. 2022-09-14 22:38:34 +02:00
Eric Pouech
76d97b6e8e winedump: Print signed integers with %d.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-13 22:07:22 +02:00
Alexandre Julliard
12bf088ac0 winetest: Don't require an email if we have a URL. 2022-09-13 16:22:21 +02:00
Rémi Bernon
de95ee6c66 widl: Allow parameterized types in runtimeclass interfaces. 2022-09-13 16:22:21 +02:00
Eric Pouech
26f2b48a47 winedump: Harden reading PDB string table stream.
Introduce struct PDB_STRING_TABLE to describe string table's header.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-12 17:28:23 +02:00
Alexandre Julliard
30ec834cfe gitlab: Fetch the full git tree with all tags. 2022-09-09 12:37:32 +02:00
Alexandre Julliard
97302f7c9e gitlab: Always reset the git tree after a build. 2022-09-09 12:37:25 +02:00
Alexandre Julliard
1d0f66a3c6 gitlab: Run tests on Debian after the daily commit round. 2022-09-08 21:48:33 +02:00
Alexandre Julliard
dbb55ed91a makefiles: Add install-test target to install winetest.exe. 2022-09-07 20:07:18 +02:00
Alexandre Julliard
f9cad1bd19 makedep: Make the handling of install rules more generic. 2022-09-07 10:19:00 +02:00
Alexandre Julliard
aeff5099fb unicode: Add data for high Unicode planes to the Arabic shaping table. 2022-09-05 18:41:47 +02:00
Alexandre Julliard
24da06789e unicode: Add data for high Unicode planes to the bidi direction table. 2022-09-05 18:41:47 +02:00
Alexandre Julliard
ba58338b21 unicode: Add data for high Unicode planes to the linebreak table. 2022-09-05 18:41:47 +02:00
Alexandre Julliard
c848f42aa0 unicode: Add data for high Unicode planes to the scripts table. 2022-09-05 18:41:47 +02:00
Alexandre Julliard
4f75dd8c44 gitlab: Run CI scripts as non-root user. 2022-08-31 18:19:04 +02:00
Alexandre Julliard
1a982894dd gitlab: Rename build-all job to build-linux.
For symmetry with build-mac.
2022-08-31 17:44:53 +02:00
Alexandre Julliard
5e0d56e7e7 gitlab: Add macOS build. 2022-08-25 11:51:42 -05:00
Alexandre Julliard
a1af412482 Release 7.15.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-08-13 21:23:11 +02:00
Alexandre Julliard
bfc73b0b80 gitlab: Disable building image in forks. 2022-08-05 20:14:41 +02:00
Rémi Bernon
660aead73f gitlab: Build every commit in a merge request. 2022-08-05 20:14:41 +02:00
Rémi Bernon
f1a7a16b83 gitlab: Move build steps to the build-all script. 2022-08-05 20:14:41 +02:00
Alexandre Julliard
e31276e9a2 makefiles: Look for source files in the makefile before trying to open them.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-07-28 17:46:51 +02:00
Alexandre Julliard
56fea67c53 makefiles: Work directly with Makefile.in names in make_makefiles. 2022-07-28 17:46:51 +02:00
Alexandre Julliard
6f4d1766a7 makefiles: Avoid adding the same source multiple times. 2022-07-28 17:46:50 +02:00
Alexandre Julliard
872dc83e81 makefiles: List all headers in the makefile.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-07-28 17:46:50 +02:00
Alexandre Julliard
aa222ccd32 gitlab: Add CI script to create a release. 2022-07-26 22:37:48 +02:00
Hugh McMaster
3d0358fa54 gitlab: Build-Depend on libfreetype-dev.
libfreetype6-dev is a transitional package on Debian Bullseye.
2022-07-26 22:37:48 +02:00
Alexandre Julliard
889fe64d9f gitlab: Initial version of the Gitlab CI scripts.
Derived in part from the freedesktop.org config.
2022-07-25 23:06:57 +02:00
Alexandre Julliard
31d2a87ba0 winebuild: Add GNU stack note also to the undefined symbols file.
Recent ld complains about this.
2022-07-20 22:33:44 +02:00
Jinoh Kang
fa005a6c90 include: Add definition for NtSetInformationVirtualMemory.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-07-13 16:10:05 +02:00
Eric Pouech
437e73883b mscvpdb.h: Use bitfield for defrange's variable flag.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-07-12 22:51:29 +02:00
Rémi Bernon
837297c21f widl: Support namespaces for union declarations.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-07-07 19:10:02 +02:00
Rémi Bernon
25e1fb45db widl: Fix missing support for struct / union parameterized type replacement.
And we can just pass them through, as with other class types. This
fixes widl not accepting EventRegistrationToken method argument type
in a parameterized type.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-07-07 19:10:02 +02:00
Alexandre Julliard
194e09baec makefiles: Add separate variables for Unix flags and libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-29 23:23:41 +02:00
Alexandre Julliard
e2d96342df makefiles: Use the defined external lib variables also when building the libs themselves.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-29 23:23:41 +02:00
Eric Pouech
eb14fad72a mscvpdb.h: Redefine property with bitfields.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-06-28 20:30:05 +02:00
Eric Pouech
ba12b5ae88 winedump: Explore a bit more TPI hash elements.
Rename a couple of fields in PDB structures for clarity.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-06-28 20:24:18 +02:00
Alexandre Julliard
b819b99562 makefiles: Never install external libraries.
Spotted by Kevin Puetz.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-24 22:38:40 +02:00
Alexandre Julliard
3ccb5f238e make_unicode: Verify checksums of downloaded files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-24 21:05:26 +02:00
Alexandre Julliard
cfaa28933b make_unicode: Add a table of downloaded files and their URLs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-24 21:05:26 +02:00
Alexandre Julliard
3ec7c467cd make_unicode: Generate the time zone registry keys.
Based on a script written by Giovanni Mascellani.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-24 21:05:26 +02:00
Alexandre Julliard
630f605c26 make_unicode: Make support of registry values more generic.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-24 21:05:25 +02:00
Connor McAdams
ad8c61d897 include: Import IAccessible2 headers.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2022-06-15 21:48:08 +02:00
Alexandre Julliard
1e52895ef7 kernelbase: Implement IsNLSDefinedString().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-07 16:57:26 +02:00
Alexandre Julliard
b956620d81 make_unicode: Add data for high Unicode planes in case mapping tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-06 13:38:55 +02:00
Jacek Caban
f1549e7f6c winemac: Move driver implementation to unixlib.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-03 09:40:32 +02:00
Alexandre Julliard
66fb3bf631 make_unicode: Get rid of the old collation table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-31 11:43:28 +02:00
Rémi Bernon
d81589371d widl: Remove set but unused variable.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-25 11:58:57 +02:00
Nikolay Sivov
f2ee6b7c31 winedump: Add support for dumping UnloadedModuleListStream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-19 18:28:25 +02:00
Nikolay Sivov
d50f7b02a9 winedump: Add support for ThreadInfoListStream stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 08:53:57 +02:00
Nikolay Sivov
0d89f67ea2 winedump: Add support for dumping handle data stream from minidumps.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 08:53:53 +02:00
Nikolay Sivov
a9f9c1a696 winedump: Cleanup minidump output helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 08:53:49 +02:00
Nikolay Sivov
38d7ea5c6f winedump: Output minidump streams in order they appear in the file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 08:53:46 +02:00
Jacek Caban
10f38c0600 winex11: Move user driver to unixlib.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-06 19:18:22 +02:00
Brendan Shanks
f214d0c44e wrc: Support function macros where varargs are the only argument.
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-04 22:10:50 +02:00
Nikolay Sivov
1ad2cb51c5 nls: Hardcode minus sign for all locales.
CLDR data for RTL locales includes LRM marker for minus sign text,
in addition to that some locales are using different dash character.
Windows seems to consistently use same character for all locales.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52866
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-27 13:24:22 +02:00
Alexandre Julliard
f3b77b8027 kernelbase: Use the digit table from locale.nls in FoldStringW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-25 11:53:53 +02:00
Alexandre Julliard
9e6d0e459f make_unicode: Generate the character mapping tables in locale.nls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-25 11:52:14 +02:00
Alexandre Julliard
4b865129a5 winedump: Build with nameless unions/structs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Alexandre Julliard
fdd0ad5939 winedump: Enable compilation with long types.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Alexandre Julliard
88c06077f8 winedump: Remove unused variables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Alexandre Julliard
af54377eb6 winedump: Avoid using DWORD in private definitions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Alexandre Julliard
e1e6d18a61 winedump: Fix some incorrect uses of Unix 'long' type.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 16:49:46 +02:00
Alexandre Julliard
53ab4c5385 include: Avoid Windows types in CodeView structure definitions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 16:01:54 +02:00
Alexandre Julliard
6f04c33c04 winedump: Add support for dumping locale.nls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 15:33:56 +02:00
Alexandre Julliard
6644b6b667 make_unicode: Update to CLDR version 41.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-07 22:44:39 +02:00
Alexandre Julliard
65fc470dfe make_unicode: Generate the calendar table in locale.nls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-05 16:54:44 +02:00
Alexandre Julliard
ad44edebde makedep: Add dependency on locale.nls for rc files.
wrc will load locale.nls if the rc file uses a non-English language.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-04 10:43:48 +02:00
Alexandre Julliard
701ed2591b wrc: Avoid loading locale.nls when not necessary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-04 10:43:09 +02:00
Alexandre Julliard
f445f21a38 wrc: Use the locale.nls data to determine a language's codepage.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-01 20:30:57 +02:00
Alexandre Julliard
d0b7fa9da7 wrc: Store version and characteristics as simple integers.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-01 20:30:57 +02:00
Alexandre Julliard
49bea92bdc wrc: Store language as a simple integer.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-01 20:30:57 +02:00
Alexandre Julliard
234710e8f7 wrc: Remove resource dumping support.
winedump can be used to debug resource contents.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-01 20:30:57 +02:00
Alexandre Julliard
51d3369334 wrc: Remove the verify translation mode.
It's no longer useful now that we support po files.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-01 20:30:57 +02:00
Alexandre Julliard
88dcdbdcc6 widl: Silence error message for unknown languages.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-01 20:30:57 +02:00
Alexandre Julliard
ad02ef7bec make_unicode: Generate the GeoID table in locale.nls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-31 07:39:56 +02:00
Alexandre Julliard
989f7d6481 make_unicode: Generate the language groups registry keys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-24 23:22:06 +01:00
Tatsuyuki Ishi
510cfd2762 winegcc: Identify ar files through signature.
Rust uses the ".rlib" extension for intermediate libraries which it
passes to the linker. Detect them through signature so that winegcc will
not try to compile it.

Signed-off-by: Tatsuyuki Ishi <ishitatsuyuki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-24 09:53:59 +01:00
Alexandre Julliard
8cdb593f5a make_unicode: Generate locale.nls using the Unicode CLDR data.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-21 14:28:09 +01:00
Brendan Shanks
7b27e60e67 makefiles: On macOS, use @rpath instead of @loader_path when building Unix libs.
Fixes launching 32-bit EXEs from a WOW64 build dir.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52618
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-08 09:32:37 +01:00
Zebediah Figura
9951f2f433 makedep: Do not forbid importing system headers in msvcrt modules.
The apparent intention of catching mistakes early is laudable. However, the
number of exceptions both in the code and not in the code (in particular,
valgrind.h) shows that this is clearly getting in the way more often than not.

In practice an attempt to compile with a system API we don't support will be met
with a clear error at link time, e.g.:

/usr/bin/x86_64-w64-mingw32-ld: dlls/xmllite/reader.cross.o: in function `debugstr_nodetype':
/home/whatsit/git/wine64/../wine/dlls/xmllite/reader.c:116: undefined reference to `pthread_once'

And when there is no external function involved (as with stdarg.h, x86intrin.h,
valgrind.h), there's no reason to prevent use of the headers.

The motivation for this patch is the ability to import system vkd3d.h in e.g.
d3d12 and dxgi, which do not link to libvkd3d directly (but rather indirectly
through wined3d) and so do not fall under the has_external_import() exception. I
could see no simple way to adapt has_external_import() to account for this case.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-04 10:02:24 +01:00
Alistair Leslie-Hughes
3f942a32c3 widl: Support basic BYTE type.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-04 10:01:32 +01:00
Bernhard Kölbl
6555201716 widl: Allow multiple uses of the activatable attribute.
Signed-off-by: Bernhard Kölbl <besentv@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-02 20:17:25 +01:00
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
Alexandre Julliard
5d4ca2225e makefiles: Also look for generated includes in the source file directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard
9da1813651 makefiles: Add helper functions to open generated include files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard
9d494730fe makefiles: Get rid of the documentation rules.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-19 16:19:07 +01:00
Alexandre Julliard
c562952f92 tools: Add a helper function to read the contents of a file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-19 10:57:30 +01:00
Alexandre Julliard
49326cb258 tools: Use flush_output_buffer() in a few more places.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-19 10:55:08 +01:00
Jacek Caban
099ba1b410 winegcc: Use libgcc on Cygwin target.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52328
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-05 17:16:45 +01:00
Martin Storsjö
7f95c69299 widl: Fix including tlb files in mingw-w64-tools configuration.
Prior to c94f44f9b4 (widl: Search for
imported typelibs in the library search path.), widl looked for
tlb files in the path specified by BIN_TO_INCLUDEDIR. After that
commit, widl looks for tlb files in a subdirectory (get_pe_dir)
of BIN_TO_DLLDIR (which mingw-w64 sets to the same as
BIN_TO_INCLUDEDIR).

For compatibility with the mingw-w64 usecase, check for tlb files
in the directory specified by BIN_TO_DLLDIR without a separate
subdirectory suffix too.

Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-29 13:44:03 +01:00
Alex Henrie
b45ac3a0b8 api-ms-win-core-windowserrorreporting-l1-1-1: Add DLL.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51923
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-23 22:57:01 +01:00
Eric Pouech
a9c177464f winedump: Support dumping quad word values in enumerations.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-17 17:22:45 +01:00
Jacek Caban
f4ddcc36e9 winebuild: Allow using clang for as command.
Since a9b5bb326a, Wine needs
get_as_command to work without cc_command available. While as is usually
a GCC dependency, Clang toolchains may not contain it.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-16 20:29:38 +01:00
Andrey Gusev
6f1b78b537 wmc: Fix a typo in a comment.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-14 12:15:46 +01:00
Alexandre Julliard
4670846dfc sfnt2fon: Use the standard output buffer functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-10 22:00:17 +01:00
Alexandre Julliard
b53773cff2 tools: Move the output buffer functions to the common header.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-10 22:00:17 +01:00