Commit Graph

168 Commits

Author SHA1 Message Date
Jacek Caban aae296bfd7 winegcc: Always mark executables as nx compat.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-31 09:44:28 +02:00
Alexandre Julliard 483de1a8a2 kernelbase: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-18 23:51:51 +02:00
Alexandre Julliard 5061261c5e winebuild: Add a -munix option.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-17 09:24:25 +02:00
Alexandre Julliard c4e0b9d092 makefiles: Support cross-compilation of 16-bit libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-20 10:15:17 +02:00
Alexandre Julliard 945efdb6f3 makefiles: Use -fshort-wchar when building with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 22:55:54 +02:00
Alexandre Julliard 0d175fe861 winegcc: Use -static-libgcc for the Windows build.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 19:00:10 +02:00
Zebediah Figura d97e544387 winegcc: Add support for -fno-PIC.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Alexandre Julliard 11ee7a7051 winegcc: Add option to put a builtin dll signature in the DOS header of PE files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-22 11:34:14 +02:00
Alexandre Julliard 45bf872a43 winegcc: Use Wine's msvcrt for Windows builds.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-05 22:16:30 +02:00
Alexandre Julliard 4c0ea277cb winegcc: Use a .spec.o files when building for Windows.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 10:02:50 +01:00
Huw Davies 7cb188fdb1 winegcc: Restore the linker option specifier for strip.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 10:01:39 +01:00
Alexandre Julliard 44839493ae winegcc: Also return Windows link flags in get_link_args().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-09 20:54:17 +01:00
Alexandre Julliard 9ce91cd56e winegcc: Make get_lddllflags() more generic to return all link flags.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-09 20:53:25 +01:00
Alexandre Julliard d228b3cfd5 winegcc: Get rid of the Mingw Unicode hack.
Mingw supports Unicode nowadays.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-09 20:53:17 +01:00
Piotr Caban 8b24bc95b9 winebuild: Recognize armv7a target.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-22 18:22:21 +01:00
Andre Heider 9bb21d1135 winegcc: Don't add the prefix's include dir using -isystem.
Always use -I, this fixes the include search path if the prefix is
set to '/usr'.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46293
Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-17 10:39:09 +01:00
Andrew Eikum 590ccd0f5c winegcc: Pass -static-libstdc++ to the linker.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 22:27:04 +01:00
Andre Heider 2dfff7e63c winegcc: Fix cross linking on multiarch platforms.
If e.g. the 64bit libdir was set to /foo/lib/x86_64-linux-gnu/bar, winegcc
will now look for the 32bit libdir at /foo/lib/i386-linux-gnu/bar.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 17:05:41 +01:00
Andre Heider 0e279d26b8 winegcc: Add -I for the prefix's include dir.
This allows external projects to e.g. "#include <wine/debug.h>" for
non-standard prefixes, like winehq's distro packages residing in /opt.

Signed-off-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 10:17:48 +01:00
Alexandre Julliard a51611e816 winegcc: Forward the -mfpu option to winebuild.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-05 20:21:30 +01:00
Jacek Caban b9427efe3e winegcc: Support distros using plain lib for 32-bit libraries in get_lib_dir.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 15:55:59 +02:00
Jacek Caban ce4dde3e9a winegcc: Improve heuristics for -m32/-m64 options in get_lib_dir.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 17:07:07 +02:00
Jacek Caban 551d0971c5 winegcc: Check also for unsuffixed lib/ dir in get_lib_dir.
Wine uses lib/ and lib64/ by default. This fixes -m32 handling in such
configuration.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-19 18:26:30 +02:00
Alexandre Julliard 470bd0c2fa winegcc: Add support for building native subsystem libraries.
Based on a patch by Zebediah Figura.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-01 12:58:34 +02:00
Alexandre Julliard 395a94d308 winegcc: Set page alignment to 4096 in all cases.
This avoids leaving holes in builtin dll mappings.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-02 20:47:10 +02:00
Alexandre Julliard c81de726f2 winegcc: Add support for -mfloat-abi option.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-08 16:45:55 +01:00
Alexandre Julliard f5929a9cf9 winegcc: Set the soname of all dlls on Android.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-20 14:56:30 +09:00
Alexandre Julliard 2b525db8a2 winegcc: Support building from the top directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-31 15:08:12 +09:00
Alexandre Julliard e59395208d makefiles: Reduce the maximum page size for modules that have a base address.
It avoid bumping into the next allocated base address on 64-bit.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-28 16:26:54 +09:00
Alexandre Julliard 33147c9475 winegcc: Use explicit library file name when loading cross libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-28 12:32:15 +09:00
André Hentschel b33fab40d3 winegcc: Sync toolchain detection with winebuild.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-30 08:08:46 +01:00
Stephen Kitt 312b7b43cb winegcc: Pass through -march to winebuild.
Signed-off-by: Stephen Kitt <steve@sk2.org>
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-15 09:12:22 +01:00
Alexandre Julliard 097006b146 winegcc: Disable setting image base address on Android.
The Android linker doesn't handle this correctly.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-16 23:30:10 +09:00
Alexandre Julliard bf73faefc7 winegcc: Force stack alignment on all x86 platforms.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-16 22:52:41 +09:00
Michael Cronenworth a35f9a13a8 winegcc: Check for linker relocation support before relying on prelink.
Prelink was used to rewrite binares and set their text segment, but
modern linkers support setting the value at link time. Prelink is
being retired by upstream.

Signed-off-by: Michael Cronenworth <mike@cchtml.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-22 16:57:06 +09:00
Gerald Pfeifer 189ffc2e73 makefiles: Support building with non-default LD. 2015-01-22 21:42:25 +01:00
André Hentschel 20006966ab winegcc: Respect TMPDIR environment variable. 2014-09-24 11:04:54 +02:00
Alexandre Julliard 1b02177a55 winegcc: Only pass large-address-aware option for i386 builds. 2014-04-29 16:07:37 +02:00
Grazvydas Ignotas f5e28fff8e winegcc: Define __stdcall and similar attributes to nothing on ARM. 2014-03-03 17:02:38 +01:00
Alexandre Julliard 4a4006d4f0 winegcc: Forward -marm and -mthumb options to winebuild. 2014-02-12 19:15:25 +01:00
Alexandre Julliard fabd3120c5 makefiles: Move the main module rules to the global Make.rules file. 2013-10-09 11:31:21 +02:00
Francois Gouget 575eb6d8e1 winegcc: Solaris uses the same link option detection code as other platforms. 2013-09-06 17:27:13 +02:00
Francois Gouget 7d3f6d4c60 winegcc: Ignore the test link command stdout and stderr messages.
Otherwise invoking winegcc on any platform where our first guess at
the link options fails results in a lot of confusing error messages.
2013-09-06 17:27:08 +02:00
Francois Gouget 4343c9e1f7 winegcc: Add a trailing '\n' to the try_link() test file.
This stops the tested gcc command from issuing a warning on Solaris.
2013-09-06 17:26:18 +02:00
Huw Davies 5a8ca9e2e8 winegcc: Don't use DLLFLAGS in winegcc. 2013-08-27 21:30:02 +02:00
Huw Davies 2374cd52a7 winegcc: Set the LDDLLFLAGS according to the target platform. 2013-08-27 21:30:02 +02:00
Alexandre Julliard 3987913453 winegcc: Pass the C compiler name to winebuild. 2013-06-10 13:43:48 +02:00
Jacek Caban c3b64d94b5 winegcc: Use gcc -shared instead of dllwrap to build DLLs. 2013-05-08 20:43:21 +02:00
André Hentschel c11da76dc5 winegcc: Add support for Multiarch Architecture Specifiers. 2013-04-23 19:12:58 +02:00
André Hentschel 504925a8f7 winegcc: Set target based on forced pointer size. 2013-04-23 19:12:56 +02:00