Alexandre Julliard
bef0969722
ntdll: Move the .so module initialization to winecrt0.
...
Use new ELF tag ids to avoid breaking backwards compatibility.
2022-12-04 22:00:43 +01:00
Alexandre Julliard
c20741b33a
winebuild: Reinstate the __wine_spec_dll_entry() entrypoint for .so dlls.
2022-12-03 16:24:45 +01:00
Alexandre Julliard
de3c286adf
winebuild: Call __delayLoadHelper2 to resolve delay imports also on non-PE builds.
2022-11-29 19:11:19 +01:00
Alexandre Julliard
1181011c1e
winebuild: Pass the delay import descriptor to the __wine_spec_delay_load function.
2022-11-29 19:11:19 +01:00
Alexandre Julliard
a2d8e7a5d3
winebuild: Generate a separate helper for each delay-imported module.
2022-11-29 19:11:19 +01:00
Alexandre Julliard
0c39285077
winebuild: Use RVAs instead of absolute addresses in the delay import descriptors.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-11-29 19:11:19 +01:00
Alexandre Julliard
29060f3d78
winebuild: Add a helper function to output a thunk data pointer.
2022-11-29 19:11:19 +01:00
Eric Pouech
944edd5068
winedump: Don't crash when dumping .dbg files.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-11-28 21:01:55 +01:00
Jacek Caban
cc91a2f933
winegcc: Use -nostdlib instead of -nostartfiles on Clang MSVC targets.
...
-nostartfiles is not enough if clang is configured with explicit default rtlib.
2022-11-28 21:01:55 +01:00
Alexandre Julliard
020e2b6bb4
makedep: Pass the actual name of the module in the delay load flags.
2022-11-23 17:59:46 +01:00
Alexandre Julliard
51087b9b65
makedep: Unify the search for static and import libs.
2022-11-23 17:59:46 +01:00
Alexandre Julliard
a9183c7e3b
makedep: Assume that all modules are built with msvcrt.
2022-11-22 18:27:30 +01:00
Alexandre Julliard
c1a00d4b5a
winegcc: Default to msvcrt mode for all PE builds.
2022-11-16 21:24:19 +01:00
Alexandre Julliard
c44eb6d627
wmc: Add support for named locales.
2022-11-15 21:21:27 +01:00
Alexandre Julliard
4e89a25927
wrc: Add support for named locales.
2022-11-15 21:21:27 +01:00
Alexandre Julliard
ac17191530
winebuild: Remove support for "hybrid" Unix libraries.
2022-11-11 12:07:41 +01:00
Alexandre Julliard
f57c8d68bd
winegcc: Remove support for "hybrid" Unix libraries.
2022-11-11 12:07:13 +01:00
Alexandre Julliard
dbe93c8a5c
makedep: Remove support for "hybrid" Unix libraries.
2022-11-11 12:05:04 +01:00
Rémi Bernon
2e5e5ade82
winebuild: Put the delay import descriptor in data section.
...
This fixes incorrect .text section flags for any module using delay
imports. The use of a custom .text$2 section as dlltool is doing causes
the section to be flagged as DATA, and ends up with the .text section
being writable, which triggers the anti tamper used in Forza Horizon.
2022-11-08 20:07:52 +01:00
Rémi Bernon
cfe83e80fc
winebuild: Fix import hint value for symbols imported by name.
...
This fixes incorrect hint values generated by dlltool: instead of the
index in the name table, it used the ordinal value, which almost always
ends up in a hint lookup failure and a fallback to binary search.
2022-11-08 20:07:52 +01:00
Rémi Bernon
6b9773529c
winebuild: Implement delay import lib generation without dlltool.
2022-11-08 20:07:52 +01:00
Rémi Bernon
244e8fd357
winebuild: Enable unwind tables by default in PE files.
...
Making sure it also emits .cfi and .seh directives and generates unwind
tables for the delay import thunks.
2022-11-08 20:07:52 +01:00
Rémi Bernon
103eb83156
winebuild: Implement import lib generation without dlltool.
2022-11-08 20:07:52 +01:00
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