Commit Graph

488 Commits

Author SHA1 Message Date
Alexandre Julliard 2fda3d6a17 winebuild: Add support for building Windows import libraries. 2009-12-30 12:49:19 +01:00
Alexandre Julliard 1f00088bc8 winebuild: Recognize mingw32 as a Windows platform. 2009-12-30 12:43:31 +01:00
Alexandre Julliard 38ca263374 winebuild: Simplify the code for finding the various build tools. 2009-12-30 12:42:25 +01:00
Alexandre Julliard 76ac103b80 winebuild: Add support for generating import libs for 16-bit dlls. 2009-12-30 12:34:03 +01:00
Alexandre Julliard 9d55475eee winebuild: Always initialize the dll name at startup. 2009-12-30 12:31:21 +01:00
Alexandre Julliard d097eef922 winebuild: Support for adding 32-bit exports in 16-bit spec files. 2009-12-29 16:11:45 +01:00
Alexandre Julliard 4939acf0ac winebuild: Allow optional keywords to be in any order in a .def file. 2009-12-29 16:09:51 +01:00
Alexandre Julliard c4c6fcaff7 winebuild: Don't check variables for undefined exports. 2009-12-29 16:09:34 +01:00
Alexandre Julliard 7782ebea01 winebuild: Fix the definition of the CPU mask flag to take ARM into account. 2009-11-19 16:44:08 +01:00
André Hentschel 27fb36b39e winebuild: Add ARM support. 2009-11-18 11:14:30 +01:00
Gerald Pfeifer 2cc7fe2192 winebuild: Add support for PLATFORM_FREEBSD to get_ld_command. 2009-10-15 12:06:18 +02:00
Gerald Pfeifer d222e8edf1 winebuild: Add support for PLATFORM_FREEBSD. 2009-10-05 15:09:41 +02:00
Alexandre Julliard a4e22d4928 tools: Build all the tools with -D__WINESRC__. 2009-10-05 14:55:25 +02:00
Alexandre Julliard 1aea4efd79 tools: Take into account the executable extension when looking for tools in the path. 2009-08-27 13:35:50 +02:00
Dylan Smith ba38f219d0 tools: Detect windows platform with _WIN32 instead of _WINDOWS. 2009-08-24 15:17:34 +02:00
Alexandre Julliard 3f7d342cfa winebuild: Add win32/win64 generic architectures in addition to specific CPUs. 2009-08-24 15:17:33 +02:00
Alexandre Julliard 5d3e134b17 winebuild: Add support for creating 16-bit fake dlls. 2009-08-17 13:57:49 +02:00
Alexandre Julliard 8024718c78 winebuild: Compute the resource offsets while building the resource tree for 16-bit resources. 2009-08-17 13:57:49 +02:00
Alexandre Julliard ef4a3c3c2d winebuild: Add support for creating a fake dll at compile time. 2009-08-14 14:16:38 +02:00
Alexandre Julliard 99037aa9cc winebuild: Compute the resource offsets while building the resource tree. 2009-08-14 14:11:34 +02:00
Alexandre Julliard 47497cb26a winebuild: Add helper functions for writing binary data to a file. 2009-08-14 13:59:11 +02:00
Alexandre Julliard b935cc210c winebuild: Add helper functions for reading binary data from a file. 2009-08-14 13:59:10 +02:00
Marcus Meissner 051535961a winebuild: Added missing close. 2009-08-10 13:09:35 +02:00
Alexandre Julliard f0ea22ba87 winebuild: Dump resource data as dwords to reduce the output file size. 2009-07-09 12:54:16 +02:00
Alexandre Julliard 7798aed2cf winebuild: Don't try to output 32-bit resources when building a 16-bit wrapper dll. 2009-06-30 12:44:59 +02:00
Stefan Dösinger 07e835fffb winebuild: Open resource files in binary mode. 2009-06-26 12:01:27 +02:00
Alexandre Julliard 2189b101de winebuild: Enforce header size alignment when outputting resources. 2009-06-23 15:53:00 +02:00
Alexandre Julliard 6cf96bf940 winebuild: Add possibility to generate a global resource file without running it through windres. 2009-06-22 11:46:33 +02:00
Alexandre Julliard fec5f5cf1f winebuild: Implement a --large-address-aware flag. 2009-06-17 17:23:20 +02:00
Alexandre Julliard 873e027e01 winebuild: Add unwind annotations to all the generated functions for x86_64. 2009-06-16 14:26:51 +02:00
Alexandre Julliard e00b4582a1 winebuild: Properly restore %rax and %rbx in call_from_regs on x86_64. 2009-06-10 13:22:04 +02:00
Alexandre Julliard e112286366 winebuild: Add detection of duplicate resources. 2009-06-02 14:25:01 +02:00
Alexandre Julliard a328834f5b winebuild: Add a --resources mode that compiles multiple resource files into a single object. 2009-06-02 13:20:43 +02:00
Ken Thomases 0e0e918f0f winebuild: On Mac OS X, use -arch option to control output of "ld" and "as". 2009-05-04 12:51:38 +02:00
Alexandre Julliard 880d00fb43 winebuild: Use iretq on x86_64 to restore more system registers and flags. 2009-05-01 18:03:23 +02:00
Alexandre Julliard b374e7e36e winebuild: Don't include any Windows header to avoid data types dependencies. 2009-04-09 20:58:43 +02:00
Alexandre Julliard 89f6bc2ef4 winebuild: Hardcode the stack frame offsets instead of using the data structures. 2009-04-09 20:30:10 +02:00
Alexandre Julliard d71284f0b4 winebuild: Hardcode the i386 register context offsets instead of using the data structure. 2009-04-09 20:01:56 +02:00
Alexandre Julliard cdad788d33 winebuild: Skip non-functions when building the undefined exports file. 2009-03-25 13:27:27 +01:00
Alexandre Julliard e9ef9911d0 winebuild: Make sure main module is properly initialized. 2009-03-24 11:50:13 +01:00
James Hawkins 665a0424cd winebuild: Document the correlation of spec->ordinals and spec->limit with an assertion (Coverity 902). 2009-03-23 18:21:06 +01:00
Alexandre Julliard 49d2c208d8 winebuild: Ignore 16-bit absolute exports when checking for undefined symbols. 2009-03-04 14:08:35 +01:00
Alexandre Julliard a82ce66048 winebuild: Support the --main-module option for stand-alone 16-bit modules. 2009-03-04 14:08:23 +01:00
Alexandre Julliard fda642d075 winebuild: Don't output the relay table if no entry point needs it. 2009-03-04 14:07:49 +01:00
Alexandre Julliard b2575ebab6 winebuild: Don't prefix local symbols with an underscore. 2009-02-27 17:43:19 +01:00
Alexandre Julliard 5599ac22c7 winebuild: Add support for generating stand-alone 16-bit modules.
This is done by wrapping them inside an empty 32-bit module.
2009-02-26 13:22:47 +01:00
Alexandre Julliard ddc8941d1c winebuild: Allow the module entry point to be NULL. 2009-02-26 12:38:37 +01:00
Alexandre Julliard 445047a97e winebuild: Make the 16-bit DOS header a local symbol. 2009-02-26 12:38:37 +01:00
Alexandre Julliard dca163290d winebuild: Search for the as/ld/nm tools in the PATH under various names. 2009-02-04 19:37:13 +01:00
Alexandre Julliard 0e954b14eb winebuild: Append the correct options for as and ld when forcing a 32/64-bit build. 2009-02-04 19:33:49 +01:00
Alexandre Julliard d07f67acbc winebuild: Determine the appropriate as/ld/nm commands at the time they are needed. 2009-02-04 19:31:54 +01:00
Alexandre Julliard 07f77c4148 winebuild: Add -m32/-m64 options to allow 32/64-bit cross-compiles. 2009-01-15 21:17:51 +01:00
Alexandre Julliard 034a7f8849 winebuild: Add -b as a short option for --target for gcc compatibility. 2009-01-14 12:52:53 +01:00
Alexandre Julliard 465ddc51dc winebuild: Implement register entry points for x86_64. 2009-01-06 17:01:44 +01:00
Alexandre Julliard e31188d9da winebuild: Improve the calling sequence for register functions.
Pass parameters on the stack instead of retrieving them from the code
stream; this ensures that the code contains only valid instructions.
2009-01-06 12:51:18 +01:00
Alexandre Julliard 01722d6010 winebuild: Generate relay debugging thunks for x86_64. 2008-12-27 19:59:55 +01:00
Alexandre Julliard 913354e75b winebuild: Fix delay load code to preserve stack alignment and save the correct registers. 2008-12-27 19:58:42 +01:00
Alexandre Julliard 8a87aaa9d9 winebuild: Generate the __wine_call_from_32_regs function along with the 16-bit kernel routines. 2008-12-27 19:50:25 +01:00
Alexandre Julliard ce63574425 winebuild: Generate stub entry points for x86_64. 2008-12-16 12:20:30 +01:00
Alexandre Julliard fa616418ad winebuild: Make the cpu flag more generic to allow supporting a given entry point on multiple platforms. 2008-12-08 17:07:50 +01:00
Alexandre Julliard 9f1cf1c263 winebuild: Don't add stdcall decorations on non-x86 platforms. 2008-12-03 22:37:07 +01:00
Maarten Lankhorst 1fcc33451a winebuild: Use ms-abi for delayed load stubs. 2008-11-25 12:33:22 +01:00
Rob Shearman 8a6f1655d8 winebuild: Declare fatal_error and fatal_perror as non-returning functions. 2008-09-30 10:20:05 -05:00
Alexandre Julliard 1abf809099 winebuild: Generate MS-style imports using the OriginalFirstThunk field. 2008-09-04 21:52:58 +02:00
Alexandre Julliard b3ec2e5f95 makefiles: Recurse into all directories for install-lib and install-dev too. 2008-08-25 14:27:03 +02:00
Alexandre Julliard b24b2d584e winebuild: Don't put the PE header in the .init section on Solaris. 2008-07-22 13:26:45 +02:00
Alexandre Julliard a3f42116da winebuild: Add Solaris as a separate platform. 2008-07-22 13:26:30 +02:00
Simon Richter 238e1868b2 winebuild: Fix import stub on ppc.
The address calculation was wrong, as the addition of the lower 16 bits
is a signed addition, so if bit 15 is set, the upper 16 bits need to be
incremented by one (so the hi portion of the symbol always references
the symbol + 0x8000).
2008-06-02 12:33:47 +02:00
Simon Richter d1e277fb70 winebuild: Fix branch mnemonic on ppc. 2008-06-02 12:33:27 +02:00
Alexandre Julliard 0c214a7091 winebuild: Add support for 16-bit exe modules. 2008-03-03 15:19:53 +01:00
Alexandre Julliard 5625c6079e Get rid of the global thread.h header. 2008-03-01 11:57:00 +01:00
Dmitry Timoshkov cf94095eb7 winebuild: Add a couple of missing indentations in the generated asm files. 2008-01-23 11:31:43 +01:00
Austin English 90f89fa74d tools: Spelling fixes. 2008-01-18 12:52:09 +01:00
Alexandre Julliard aaf02c6f4a winebuild: Don't try to use the .init section on Mac OS. 2008-01-16 20:27:35 +01:00
Alexandre Julliard 538071ce7e winebuild: Reserve the space for the PE header in the .init section. 2008-01-16 17:51:59 +01:00
Michael Stefaniuc e94bcee53f winebuild: Remove duplicate declaration of variable 'j'. 2007-12-14 12:26:14 +01:00
Alexandre Julliard b462c20876 winebuild: Don't set the IMAGE_FILE_DLL flag on native modules. 2007-12-11 14:59:54 +01:00
Alexandre Julliard 195356c098 winebuild: Also optimize out imports that are only used for forwards. 2007-12-06 21:44:45 +01:00
Alexandre Julliard e6fe7341f5 winebuild: Improved checks for missing forward entry point targets. 2007-12-06 21:43:41 +01:00
Alexandre Julliard 32fc1acb1c winebuild: Print a warning when failing to import a data export. 2007-12-06 21:43:41 +01:00
Alexandre Julliard c32e02e48d winebuild: Add a few nops to stub entry points to make Safedisc happy. 2007-11-07 20:36:04 +01:00
Alexandre Julliard 3243311214 winebuild: Add a -ordinal flag for entry points that must be imported by ordinal but exported by name. 2007-10-26 12:47:40 +02:00
Dmitry Timoshkov 6614028cd0 winebuild: Add IMAGE_FILE_32BIT_MACHINE flag for a 32-bit build. 2007-09-10 15:29:46 +02:00
Alexandre Julliard 44c9758d05 ntdll: Move private data to make room in the TEB for the activation context data. 2007-07-19 16:56:10 +02:00
Dmitry Timoshkov bb15683818 winebuild: Mark builtin DLLs as IMAGE_FILE_LARGE_ADDRESS_AWARE on a 64-bit platform. 2007-05-29 14:00:30 +02:00
Alexandre Julliard 560113b743 winebuild: Set the IMAGE_FILE_EXECUTABLE_IMAGE flag for all modules. 2007-05-24 12:54:27 +02:00
Dmitry Timoshkov 2c59a95122 winebuild: Fix compilation warnings in 64-bit mode. 2007-05-21 15:55:38 +02:00
Rob Shearman 5fcc5d3f62 winebuild: Refer to strings used in generated stubs by symbol rather than by offset to avoid problems when the compiler aligns the strings by 2 or more bytes. 2007-04-25 12:44:16 +02:00
Dmitry Timoshkov d57872567d winebuild: Check if a given forward does exist in one of the imported dlls, fix a couple of problems detected. 2007-04-09 12:19:31 +02:00
Andrew Talbot 5df3ff13e7 winebuild: Replace inline static with static inline. 2007-03-17 20:05:12 +01:00
Joris Huizer c9f1452233 winebuild: sign-compare fixes. 2007-03-05 15:31:48 +01:00
Alexandre Julliard 7035aa5041 make_makefiles: Generate the top-level .gitignore file.
Add a PROGRAMS variable in some makefiles to make things easier.
2006-12-27 21:23:36 +01:00
Alexandre Julliard 662897e9d6 winebuild: Added --nxcompat option, and mark all modules as NX-compatible by default. 2006-12-07 20:51:49 +01:00
Alexandre Julliard 813ae10f33 winebuild: Check for illegal characters in entry point names. 2006-12-04 12:23:58 +01:00
Andrew Talbot 80294709c5 winebuild: Cast-qual warning fix. 2006-10-12 11:33:09 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Andrew Talbot 0235b1bf26 winebuild: Cast-qual warnings fix. 2006-08-23 12:00:22 +02:00
Alexandre Julliard 715804999e winebuild: Added output() function to properly deal with write errors. 2006-08-11 20:41:29 +02:00
Alexandre Julliard 2886e9b0e8 makefiles: Use make dependencies to create installation directories.
This avoids a lot of redundant calls to mkinstalldirs.
2006-08-07 17:48:18 +02:00
Ge van Geldorp 7a15278504 winebuild: Save registers which might contain parameters for the function to be called. 2006-07-11 17:16:06 +02:00