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
Ge van Geldorp
2a8b31d162
winebuild: Reserve enough space for null function pointer.
2006-07-11 12:40:01 +02:00
Alexandre Julliard
cc2b3b48e6
Take advantage of the recursive nature of .gitignore for Makefile entries.
...
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Alexandre Julliard
d489a0a312
winebuild: Get rid of the data16 prefix, it shouldn't be needed anymore and causes warnings.
2006-06-19 21:16:50 +02:00
Alexandre Julliard
fb15dabdcd
winebuild: Fix a few printf format warnings by casting size_t.
2006-06-13 14:14:59 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Alexandre Julliard
88bf4d61c3
winebuild: Disable linking to external symbols by default.
2006-04-18 20:49:29 +02:00
Alexandre Julliard
02a9bc0094
winebuild: Fixed index in module table for delayed imports.
2006-04-18 11:23:49 +02:00
Alexandre Julliard
392933149b
winebuild: Remove a no longer necessary movzwl instruction.
...
This could cause broken relays to be generated depending on the order
of the entry points in the relay list.
Also add a few missing tabs in the assembly output.
2006-04-05 20:02:51 +02:00
Robert Shearman
90938d6b6c
winebuild: Correction for manpage.
...
The behaviour for winebuild is to prefer main over WinMain, not the
other way around.
2006-02-16 19:32:35 +01:00
Mike Frysinger
5392844392
Add support for 'make install DESTDIR'.
2006-02-14 13:51:38 +01:00
Alexandre Julliard
433bbdf08a
winebuild: Get rid of the default ignored symbols list.
2006-01-24 12:29:31 +01:00
Alexandre Julliard
3f0a473fb7
winebuild: Always import atof, the MS version is different.
2006-01-23 11:27:04 +01:00
Marcus Meissner
1ed3ca0883
winebuild: Output a .note.GNU-stack section to allow nonexecutable stack.
2006-01-21 19:23:36 +01:00
Alexandre Julliard
76ece8530a
winebuild: Moved offset definitions to relay.c since they are only
...
needed there.
Hardcoded a couple of TEB offsets to support cross-compilation.
2006-01-20 19:45:57 +01:00
Alexandre Julliard
4ce433d826
ntdll: Move the %gs register to the ntdll_thread_regs structure.
2006-01-20 16:54:11 +01:00
Alexandre Julliard
8651ceb18e
ntdll: Make __wine_call_from_32_restore_regs take a context pointer.
...
Changed exception raise functions to call it explicitly.
2005-12-19 09:59:50 +01:00
Alexandre Julliard
5dc6d95952
ntdll: New implementation of relay thunks.
...
New implementation of relay thunks that doesn't require modifying code
on the fly, so that the thunks can be put in the text section.
Some performance improvements.
2005-12-18 10:45:01 +01:00
Alexandre Julliard
db4c1561f2
winebuild: Allow -register flag for Win32 too.
...
This way it can be used as hint for the relay code.
2005-12-16 12:44:16 +01:00
Francois Gouget
5127dc9f49
Assorted spelling fixes.
2005-12-02 16:15:09 +01:00
Alexandre Julliard
0d6a305047
Preserve 16-byte stack alignment in 16-bit relays.
2005-11-28 17:39:05 +01:00
Alexandre Julliard
c367dc4f2e
Enforce 16-byte stack alignment when returning from 16-bit code and
...
when calling a register function.
2005-11-28 17:38:40 +01:00
Alexandre Julliard
0ec7e1a591
Renamed all .cvsignore files to .gitignore.
2005-11-26 13:10:33 +01:00
Alexandre Julliard
cc01e8ff05
Preserve 16-byte stack alignment in the various assembly
...
functions. Needed for MacOSX.
2005-11-23 19:55:06 +01:00
Robert Lunnon
d4c425b681
Remove SVR4 specific pseudo-ops.
2005-10-24 15:01:34 +00:00
Simon Richter
9aa432346c
Fix winebuild's ppc assembly generation.
2005-10-24 15:01:18 +00:00
Alexandre Julliard
12a749984c
Put Wine version information in all the man pages.
2005-10-06 16:10:01 +00:00
Alexandre Julliard
664e4106c6
Added global rules for man pages.
2005-10-06 16:06:04 +00:00
Alexandre Julliard
fb3a9ed135
Fixed some nroff warnings.
2005-10-06 11:40:43 +00:00
Alexandre Julliard
e86a6a2454
Get rid of the debug channels support.
2005-09-29 13:41:34 +00:00
Alexandre Julliard
75c27e17b6
Defined a proper structure for debug channels.
...
Also put all the function pointers inside a structure and added
__wine_dbg_set_functions to change them instead of exporting the
pointers directly.
2005-09-23 10:52:07 +00:00
Alexandre Julliard
5cb97d833a
Generate 16-bit spec files as assembly code too.
2005-09-21 14:23:54 +00:00
Alexandre Julliard
2aae74dff0
Factor out a couple of useful helper functions.
2005-09-21 11:50:04 +00:00
Alexandre Julliard
210bd2dd94
Make sure that values of absolute symbols fit in 16 bits.
2005-09-21 11:10:54 +00:00
Alexandre Julliard
3cd7379d26
Moved stub function generation to import.c. Added a get_stub_name
...
function to ensure naming consistency.
2005-09-21 10:57:04 +00:00
Alexandre Julliard
5173234ea8
Now that we have to be able to run the assembler from winebuild, added
...
an option to generate a .spec.o file in a single step.
Added --save-temps and --verbose options for easier debugging.
2005-09-21 10:22:28 +00:00
Alexandre Julliard
c5c6968e96
Fixed stack offset of %eax register.
2005-09-20 11:38:29 +00:00
Alexandre Julliard
a999a990fe
Create an assembly file with all undefined symbols and add it to the
...
link command so that the symbols show up in the final undefined list.
Use that list to create thunks for all exported but undefined symbols,
to make sure all export RVAs point somewhere inside the module.
2005-09-19 17:04:43 +00:00
Alexandre Julliard
87c347b18e
Don't remove ignored symbols from the undefined list, simply skip them
...
when resolving imports.
Added get_temp_file_name utility function.
2005-09-19 15:24:13 +00:00
Alexandre Julliard
7a52190c03
Take into account -noname functions when checking for duplicate export
...
names. Fixed a couple of issues found by the stricter check.
2005-09-19 14:44:28 +00:00
Alexandre Julliard
96508ad686
Moved return value handling to the individual relay thunks so that we
...
only need one version of wine_call_from_16.
Patch the wine_call_from_16 address along with the cs value directly
in the 16-bit code segment to avoid the need for special magic in the
import thunks.
2005-09-18 12:25:22 +00:00
Alexandre Julliard
89024a63d3
Make the users of wine_call_from_32_regs save %eax so that we don't
...
need a special hack in the import thunk.
Added a get_pc_thunk_eax function to simplify the code a bit.
2005-09-18 11:13:54 +00:00
Alexandre Julliard
80083b18f8
Store RVAs instead of pointers wherever possible in the generated NT
...
header and directories.
2005-09-17 14:39:51 +00:00
Alexandre Julliard
8c6649e457
Implemented import thunks for x86-64.
2005-09-16 19:39:42 +00:00
Alexandre Julliard
13baa7b364
Added a common function to declare global symbols, and make them
...
hidden on platforms that support it.
2005-09-15 18:48:39 +00:00
Alexandre Julliard
9f49889188
Now that everything is done in assembly in the spec file, directly
...
generate a .s file to bypass gcc inefficiency with large data
structures.
2005-09-15 15:01:30 +00:00
Alexandre Julliard
41177ca0bd
Output the resource data in assembly too.
2005-09-15 09:42:22 +00:00
Alexandre Julliard
8aba0897bd
Output constant strings in a more appropriate section than .text.
2005-09-14 19:18:05 +00:00
Alexandre Julliard
3fa5678ea9
Generate stub functions directly in assembly.
2005-09-14 15:49:45 +00:00
Alexandre Julliard
261e376495
Fixed a number of pointer to integer conversions that wouldn't work
...
right on a 64-bit platform.
2005-09-12 15:14:06 +00:00
Alexandre Julliard
43bd5512c3
Added support for 64-bit format NT header and export/import tables.
2005-09-08 11:35:19 +00:00
Alexandre Julliard
c382ed06d3
Added a bit of framework for future x86_64 support.
2005-09-07 13:31:37 +00:00
Alexandre Julliard
e6c7669226
Generate the NT header in assembly instead of using a C structure.
2005-09-07 11:44:16 +00:00
Alexandre Julliard
2aa9e201b2
Output the delayed import table using assembly too.
2005-09-03 15:39:13 +00:00
Alexandre Julliard
932ecb24eb
Output the import directory using assembly instead of C structures.
2005-09-02 15:36:03 +00:00
Alexandre Julliard
d1c5f68dca
Added an entry point routine for native drivers.
2005-09-02 15:19:42 +00:00
Alexandre Julliard
ce20722109
Moved the spec file init function and constructor to winecrt0.
2005-09-02 14:43:03 +00:00
Alexandre Julliard
68f177364d
Avoid using common symbols, they are broken on Mac OS.
2005-08-29 21:49:57 +00:00
Alexandre Julliard
d13b99d5f9
Compute the ordinal base and limit in assign_ordinals instead of doing
...
it while parsing.
2005-08-29 15:15:42 +00:00