Jacek Caban
e9de7761cd
winegcc: Pass only raw compiler and linker arguments in forward mode.
...
Fixes use case like:
CC=winegcc -b i686-w64-mingw32
$CC --version
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-20 20:12:02 +02:00
Jacek Caban
14d97456a9
winegcc: Default to ucrtbase.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:48:56 +02:00
Alexandre Julliard
469058acc1
winegcc: Allow the output file to end in .so.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Jacek Caban
942e298308
winegcc: Introduce --debug-file option for generating separated symbol files.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Jacek Caban
d784de82c8
winegcc: Use --safeseh winebuild option on msvc target.
...
lld-link requires all x86 object files to be SEH compatible unless it's
explicitly disabled.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-06 19:02:58 +02:00
Jacek Caban
35a7ed0c78
winegcc: Add support for msvc target.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:33:52 +02:00
Jacek Caban
66aa39d959
winegcc: Use libgcc only on mingw target.
...
It's not available for msvc, but we get all we need from importlibs there.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:33:35 +02:00
Jacek Caban
2dee9b9874
winegcc: Make mingw a separated platform from msvc.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:33:28 +02:00
Jacek Caban
78ce43f017
winegcc: Explicitly pass DLL crt entry point to PE linker when Wine crt is used.
...
Linkers don't agree on its default.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:33:00 +02:00
Jacek Caban
346cbb6f26
winegcc: Add entry symbol underscore when building linker command.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 17:32:39 +02:00
Serge Gautherie
0939a3f7f2
winegcc: Reorder DECLSPEC_NORETURN on error().
...
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 12:57:45 +02:00
Alexandre Julliard
62807be8c9
makefiles: Explicitly import libwine where necessary.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 12:00:08 +02:00
Alexandre Julliard
1ccd638b1a
winegcc: No longer use a constructor for module initialization.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 11:27:53 +02:00
Alexandre Julliard
c30d30d328
winegcc: Fixup constructors after building a module.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:03 +02:00
Alexandre Julliard
b336a084d6
winegcc: Only use a constructor for dll modules.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-15 20:03:30 +02:00
Alexandre Julliard
3622b9ab15
winegcc: Use the CRT startup code also for non-PE builds.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-15 17:21:07 +02:00
Chip Davis
f83646736b
winegcc: Put quotes around arguments with spaces when printing them.
...
This makes it easier to copy and paste the command into the shell.
Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-06 10:46:03 +02:00
Jacek Caban
aabfd2dd3a
winegcc: Add support for using clang directly.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:22:17 +01:00
Jacek Caban
9a9f35a4df
winegcc: Pass tool by id to build_tool_name.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:22:13 +01:00
Jacek Caban
4cfe747772
winegcc: Return build_tool_name result as strarray.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:22:11 +01:00
Jacek Caban
945c61c32d
winegcc: Lookup PATH in find_binary and don't try to run binaries that can't be found.
...
Based on winebuild.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 14:22:07 +01:00
Jacek Caban
747c46a4bc
winegcc: Don't pass ld command to winebuild when building PE file.
...
It's not used anyway.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Jacek Caban
e7fe6c0ac2
winegcc: Fix passing -delayload argument to linker.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:02 +01:00
Jacek Caban
cf20f54dd9
winegcc: Check more target components for platform string.
...
Fixes parsing llvm style mingw target *-pc-windows-gnu.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-27 23:34:51 +01:00
Jacek Caban
b253bd6565
winegcc: Clean up output file on error.
...
Based on winebuild.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 21:10:40 +01:00
Jacek Caban
b0ea67ed46
winegcc: Treat -target argument as an alias to --target for clang compatibility.
...
clang uses -target for the same thing as we do.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 21:10:29 +01:00
Jacek Caban
8cf418314c
winegcc: Recognize -rtlib as linker argument.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 21:10:22 +01:00
Alexandre Julliard
d96a0acf29
winegcc: Make the WINEBUILD variable take precedence over the bin directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 21:40:22 +01:00
Alexandre Julliard
69a9c2be72
winegcc: Also search the include and lib dirs relative to the binary path.
...
Suggested by Kevin Puetz.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 15:57:11 +01:00
Jacek Caban
1867a411b0
winegcc: Use Wine crt when linking to msvcrt.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:40:42 +01:00
Jacek Caban
c6e6771fab
winegcc: Use Wine crt when linking builtin EXEs.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Jacek Caban
618ac5f32a
winegcc: Add support for -Wl,--entry argument.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-23 21:11:29 +01:00
Alexandre Julliard
51ffea5a39
winegcc: Use winebuild to set the builtin flag.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-18 21:13:16 +01:00
Chip Davis
6c50dbd14e
winegcc: Pass through -fuse-ld= to the linker.
...
Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-25 20:47:43 +01:00
Jacek Caban
9180dec0b7
winegcc: Add support for -Wl,-delayload argument.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 21:39:40 +01:00
Alexandre Julliard
21c832da63
winegcc: Also check magic number to detect shared libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 22:43:01 +01:00
Huw Davies
ba2def2503
winegcc: Add a missing break.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-30 11:48:21 +02:00
Alexandre Julliard
0bfee2c6eb
winegcc: Centralize argument parsing into the main switch.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 13:26:52 +02:00
Alexandre Julliard
c307223791
winegcc: Update __stdcall defines for ARM platforms.
...
Reported by Kevin Puetz.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-27 13:26:52 +02:00
Kevin Puetz
d5e175e32b
winegcc: Correctly pass the '-' file name (stdin) to the compiler.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38300
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-24 18:38:28 +02:00
Jacek Caban
6cba24ef1f
winegcc: Use -print-libgcc-file-name to find libgcc.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:18 +02:00
Alexandre Julliard
d63c51fd30
winegcc: Pass all linker arguments also when testing link options.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:18 +02:00
Alexandre Julliard
683e455497
winegcc: Always search the standard include dirs.
...
By analogy with the library dir search.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:18 +02:00
Alexandre Julliard
08956bc9bb
winegcc: Add --wine-objdir and --winebuild options for the Wine build.
...
This avoids overloading the meaning of the -B and --sysroot options.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00
Alexandre Julliard
cb010cd6ec
winegcc: Add ARRAY_SIZE macro.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00
Alexandre Julliard
13850a3eb8
winegcc: Forward the -B options to winebuild.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Alexandre Julliard
ab871dc4d8
winegcc: Support the --target option like winebuild does.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Alexandre Julliard
0c2cc9bb05
winegcc: Fix handling of the --sysroot flag when not building inside the Wine tree.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-10 23:20:41 +02:00
Jacek Caban
90bed22eb7
winegcc: Use -nodefaultlibs -nostartfiles for builtin DLLs.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-07 00:12:25 +02:00
Jacek Caban
b64187c998
winegcc: Use imported crt DLL instead of msvcrt if specified.
...
Makes winecrt0 use specified crt DLL instead of msvcrt.dll.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-07 00:12:25 +02:00