Commit Graph

214 Commits

Author SHA1 Message Date
Alexandre Julliard a5b961c2b0 Moved selector fixup for the relay code to the callto16 exception
handler.
Make sure to only use pop instructions to modify segment registers in
the relay code to simplify the selector fixup.
2003-08-25 23:48:30 +00:00
Alexandre Julliard 3be5d62b29 Moved 16-bit calls initialization and exception handling to kernel32.
Store the call_to_16 return address on the stack from the C code so
that we don't need two variants of call_to_16_regs.
2003-08-25 00:56:37 +00:00
Alexandre Julliard 3a5b7cf105 Extended WOWCallback16Ex to support register functions too. This
allows simplifying the wine_call_to_16 assembly code by moving part of
it to C code, and getting rid of the extra kernel exports.
2003-08-23 23:30:51 +00:00
Alexandre Julliard af62e83d1c Got rid of 16-bit glue code generation since it is no longer used. 2003-08-23 00:45:20 +00:00
Alexandre Julliard 346ca95af6 Support for Mac OS X powerpc register names (based on a patch by
Pierre d'Herbemont).
2003-08-13 21:57:42 +00:00
Alexandre Julliard e547e10be0 Make sure dllname doesn't get optimized out (spotted by Marcus
Meissner).
2003-08-02 00:45:34 +00:00
Alexandre Julliard 152b98fa63 Added -private flag for entry points that shouldn't be imported from
other dlls.
Support PRIVATE flag in .def files (based on a patch by Jon
Griffiths).
2003-07-28 19:19:48 +00:00
Pierre d'Herbemont 13c308caa7 Change __PPC__ flag to __powerpc__. 2003-07-21 23:51:24 +00:00
Francois Gouget 1568fa3b21 Make sure to return an error if the file generation fails. 2003-06-23 19:51:21 +00:00
Alexandre Julliard 28b64db6d5 Only print warning on nm failure because it fails on darwin if there
are no symbols (reported by Pierre d'Herbemont).
2003-05-14 19:36:28 +00:00
Alexandre Julliard 0c2c71bcae Resource names don't need a case-sensitive comparison; this avoids
depending on libwine_unicode.
2003-04-21 23:27:21 +00:00
Alexandre Julliard 6d1f9b037d Ignore "U " in nm -u output. 2003-04-10 18:36:40 +00:00
Alexandre Julliard 08dfb8c91a Don't output register function code if it's a forwarded entry point. 2003-04-03 18:05:17 +00:00
Alexandre Julliard 5577637034 Added support for specifying an stdcall dll entry point. 2003-04-01 00:08:32 +00:00
Alexandre Julliard 78675ba234 Store %gs in the TEB on every call to 16-bit code, and don't restore
it from the TEB for signals that did not happen in 16-bit code.
2003-03-25 00:36:16 +00:00
Alexandre Julliard 0c9abbeead Avoid reference to wine_get_cs function from libwine. 2003-03-24 19:44:20 +00:00
Alexandre Julliard 9e4fc4c9b6 Converted winebuild option parsing to use getopt_long. Added a number
of long aliases for the existing short options.
2003-03-23 01:12:30 +00:00
Christian Costa f814cf87af Make use of .half and/or .asciiz assembler keywords when necessary. 2003-03-23 00:18:26 +00:00
Alexandre Julliard 2ee8b5bb13 Replaced mkstemp by mkstemps from libiberty.
Removed a couple of unnecessary portability functions.
2003-03-20 21:07:49 +00:00
Alexandre Julliard f84dbdce51 Added check for duplicate ordinals, and fixed bug it uncovered in
msnet32.spec.
2003-03-20 03:30:58 +00:00
Alexandre Julliard 6a9fe36de2 Created a separate static portability library and moved some of the
libwine routines in there.
2003-03-19 22:09:16 +00:00
Alexandre Julliard 49edd19650 Handle end of line as a syntactic element in the spec file parser;
backslashes can be used to continue lines. This allows us to skip over
errors to continue parsing, and also to make specification of an entry
point link name optional.
2003-03-18 05:30:54 +00:00
Alexandre Julliard f489a272d2 Removed support for the 'forward' ordinal type. 2003-03-17 04:56:10 +00:00
Alexandre Julliard 52ec0a3ff3 Disable 'variable' in Win32 spec files.
Added support for forwarded 'extern' ordinals.
2003-03-17 00:02:11 +00:00
Alexandre Julliard daecaba4a3 Don't enter an imported dll in the import table at all if we didn't
need to import any symbol from it.
2003-03-16 23:59:48 +00:00
Alexandre Julliard 551797bc57 Properly save/restore %gs register across 16-bit calls. 2003-02-27 21:11:13 +00:00
Alexandre Julliard f8bac62769 Do not define __WINESRC__ when building tools and miscemu. 2003-01-09 01:57:15 +00:00
Dimitrie O. Paun 8b36681bad Rename __WINE__ to __WINESRC__. 2003-01-04 00:52:18 +00:00
Alexandre Julliard 60d84e8127 Updated for recent options changes. 2003-01-02 19:30:17 +00:00
Dimitrie O. Paun 959562bdcd Add the -F option to set a DLL's filename. 2003-01-02 17:48:05 +00:00
Alexandre Julliard 9ba2e89ae5 Don't ignore sprintf/sscanf imports, semantics are not exactly the
same on Windows.
2002-12-20 00:36:18 +00:00
Alexandre Julliard 470cbf2757 Added support for defining forward functions as stdcall so that we can
get the proper number of arguments for stdcall decoration.
2002-12-15 01:22:40 +00:00
Alexandre Julliard ada5e6521b Implemented import libraries; on Unix we import the .def file
directly, on Mingw we use it to build the .a library.
2002-12-12 22:03:14 +00:00
Alexandre Julliard b42dc56fce Made stdcall decoration in .def files the default, and added -k option
to switch it off.
2002-12-12 04:06:28 +00:00
Alexandre Julliard 72e1c64345 Added list of symbols to ignore by default in winebuild.
Made the -i option support removing ignored symbols too.
Removed the -noimport flag in spec files.
2002-12-12 02:20:47 +00:00
Alexandre Julliard 2cd4ed2e15 Replaced 'ignore' spec file directive by the -i option. 2002-12-07 23:54:12 +00:00
Alexandre Julliard 310de886e9 Check file header to differentiate between object files and resources
so that the -r option is not necessary.
2002-12-06 23:26:29 +00:00
Alexandre Julliard a9135e8333 Removed support for 'rsrc' spec file statement. 2002-11-18 23:16:09 +00:00
Eric Frias 1046fe3051 Added quotes to assembly language output. 2002-11-06 22:07:38 +00:00
Alexandre Julliard 910851a20e Added winebuild -e option to specify the entry point and removed the
'init' spec file directive.
Winebuild long options now use a more standard double dash format
(older format still supported for backwards compatibility).
2002-11-06 20:02:59 +00:00
Alexandre Julliard 1e1313d54c Made the dll entry point default to DllMain and removed most of the
'init' spec file declarations.
2002-11-04 23:53:41 +00:00
Alexandre Julliard 07f736bc3d Hack to detect register functions automatically so that relay debug
also works for functions using the DEFINE_REGS_ENTRY_POINT macros.
2002-11-04 22:50:24 +00:00
Alexandre Julliard 7aee90762a Merged wine_call_to_16_long and wine_call_to_16_short into a single
function.
2002-10-18 00:29:32 +00:00
Alexandre Julliard 4ce72031a0 Don't list register functions in the .def file. 2002-10-09 20:28:06 +00:00
Marcus Meissner 2ca7000dc8 Added ctype.h. 2002-09-16 23:58:59 +00:00
Alexandre Julliard 16a303b376 Replaced 'heap' .spec statement by a command line option.
Updated winebuild manpage.
2002-09-12 22:51:20 +00:00
Dimitrie O. Paun 7e035e290a Remove support for 'file', 'name', and 'mode' in .spec files. 2002-09-12 18:10:05 +00:00
Dimitrie O. Paun 7cd2edbb66 Add support for naming the DLL from the command line. 2002-09-12 17:23:25 +00:00
Patrik Stridvall 51e6c0ccb1 MSVC compatibility fixes. 2002-08-31 19:04:14 +00:00
Alexandre Julliard b0c6e36d5d Fixed line numbers in error messages and improved redefinition error
(based on a patch by Jon Griffiths).
2002-08-27 22:32:01 +00:00
Alexandre Julliard f08b186373 Try to derive temp file names from output file names for better
portability.
2002-08-27 22:29:26 +00:00
Marcus Meissner 7678791d92 Implemented delayed import assembler thunks for PPC. 2002-08-20 00:00:49 +00:00
Dmitry Timoshkov c63d98038a Include protection for <unistd.h>, <sys/types.h> and <sys/stat.h>. 2002-08-17 18:28:43 +00:00
François Gouget ebd110bc6a Fix command-line parsing for Winelib applications. 2002-08-15 23:21:03 +00:00
Marcus Meissner f0b8fe562e The text section alignment should be default, not 1. 2002-08-15 21:47:27 +00:00
Alexandre Julliard 124eaf809c Builtin modules must be aligned on 64K boundary. 2002-08-14 21:09:55 +00:00
Alexandre Julliard 6006757996 Setup exception frame around 16-bit calls to unwind stack properly. 2002-08-13 03:29:17 +00:00
Alexandre Julliard 1862a67d2d In -spec and -exe mode, accept multiple object files and link them
together internally to find the undefined symbols.
In -glue mode, accept multiple C files and generate a single glue
file for all of them.
2002-08-01 18:34:12 +00:00
Alexandre Julliard 3bd7d224fc Added a winebuild man page. 2002-07-28 18:58:41 +00:00
Alexandre Julliard 15a75259bd Added support for importing by ordinal. 2002-07-28 17:54:31 +00:00
Alexandre Julliard 112c665f83 Set correct dll file name when building a .def file. 2002-07-28 17:52:01 +00:00
Alexandre Julliard d25878f28e Put correct ordinal hints in the import table. 2002-07-25 00:25:40 +00:00
Alexandre Julliard 65c6d38581 Replace all uses of PREFIX and @function by the __ASM_NAME and
__ASM_FUNC macros.
2002-07-22 20:47:11 +00:00
Gregg Mattinson 803eb16dfa - Replaced .previous with a .section statement for the appropriate
section.
- '.section .text' is incorrect.  It should be '.section ".text"'.
2002-07-05 00:20:42 +00:00
Alexandre Julliard 77afd6c47e Made some more spec file entries optional or unnecessary.
Fixed a few DLLName/DLLFileName mismatches.
2002-06-21 19:15:45 +00:00
Steven Edwards a0587c4a08 Portability fix. 2002-06-20 22:44:41 +00:00
Alexandre Julliard f673b71ece Fixed make install target to work even when nothing has been compiled
yet.
Added install-lib and install-dev targets to allow partial
installations; moved winemaker.man and winelauncher.in to better fit
in the new install categories.
2002-06-14 23:48:27 +00:00
Alexandre Julliard cceab98642 Unregister 16-bit dlls on module unload. 2002-06-14 23:42:53 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Alexandre Julliard 5e47acbc6d Only add extra symbols if they are not already exported by this dll. 2002-05-25 21:09:15 +00:00
Alexandre Julliard 7fbd74ea55 Replaced the GET/PUT_UA macros by memcpy. Fixed a few big-endian
issues.
2002-05-23 02:53:10 +00:00
Alexandre Julliard 476aabc95a Do not output stubs in the .def file. 2002-05-19 22:29:34 +00:00
Alexandre Julliard bf90f4db87 Adapted to use the argc/argv variables from libwine.
Automatically import libraries that contain the symbols that the
.spec.c file is using.
2002-05-16 23:17:37 +00:00
Alexandre Julliard 59008670be Moved the selector access functions out of winnt.h into libwine. 2002-05-16 20:32:16 +00:00
Alexandre Julliard 1f18f61bfa Fixed missing call to make_c_identifier. 2002-05-16 18:44:06 +00:00
Alexandre Julliard ad53383f9b Added winebuild support for generating a .dbg.c file containing the
debug channels definitions.
Made win32 the default type for spec files.
Ignore C compiler in winebuild so we can simply pass it $(DEFS).
Removed type win32 and debug_channels from spec files.
Fixed winebuild to always generate correct C identifiers (reported by
Vincent Béron).
2002-05-14 20:54:58 +00:00
Alexandre Julliard 67371bcc8d Added -res option to specify resources on winebuild command-line.
Added -exe mode to generate a .spec.c for an exe without having to
provide a .spec.
Removed some no longer needed spec files.
Removed .dll extension in makefiles import specifications.
2002-05-11 23:06:32 +00:00
Alexandre Julliard ce830a9c18 Added mkinstalldirs to create directories more portably. 2002-05-09 04:31:39 +00:00
Alexandre Julliard 32459912dc Moved imports specification from the .spec into the Makefile so that
it can be used on platforms that don't build a .spec.c file.
2002-05-09 00:05:48 +00:00
Patrik Stridvall 3751ff045c MS C related changes. 2002-05-04 18:37:08 +00:00
Alexandre Julliard 9a68b7bef0 Link the tools and the server against libwine so we can use the
portability functions in there.
2002-04-27 21:19:22 +00:00
Alexandre Julliard 894b188fcf Moved __ASM_GLOBAL_FUNC macros and interlocked functions to port.[ch] 2002-04-25 21:40:56 +00:00
Alexandre Julliard e16bb784a3 Got rid of #ifdef USE_STABS. 2002-04-01 21:07:16 +00:00
Alexandre Julliard add0b5d28f Ignore imports and resources when building a .def file. 2002-03-26 01:55:25 +00:00
Alexandre Julliard 1cefed8122 Make warnings quiet by default and added -w option. 2002-03-21 01:38:53 +00:00
Alexandre Julliard c1bfca04e1 Changed builtin dlls file names to make it clear they are not normal
Unix libraries, and install them in $libdir/wine instead of $libdir to
avoid name conflicts in /usr/lib.
2002-03-20 22:19:06 +00:00
Patrik Stridvall 235da7975b Made winebuild (almost) compile and work on Windows. 2002-03-11 05:09:02 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Gavriel State f98c52b11f Some older versions of GDB need to have the filename data available
for each section, so we need to output it again for the data section.
2002-02-12 18:46:14 +00:00
Dmitry Timoshkov 93a5b8681d Support for generation of .def files from .spec files. 2002-02-04 18:48:18 +00:00
Patrik Stridvall f94462fb75 Move __stdcall/__cdecl to the right place. 2002-01-31 23:22:07 +00:00
Clemens 37d960faee Should process the .dynsym of shared libraries instead of the .stab. 2002-01-29 02:58:20 +00:00
Alexandre Julliard 7662ea1004 Made register and interrupt flags instead of entry point types, so
that we can have both stdcall and cdecl register functions.
Changed 16-bit .spec.c file generation to avoid including builtin16.h.
2001-12-14 23:14:22 +00:00
Alexandre Julliard eb9a863116 Exported CALL32_Regs from ntdll, renamed to __wine_call_from_32_regs
to follow the naming convention for this type of functions.
Split 16 and 32-bit relay functions into separate files, and moved the
32-bit ones to dlls/ntdll.
2001-12-11 00:50:33 +00:00
James Juran 49c779a862 Prevent warnings about labels at end of switch statements when
compiling with gcc-3.x.
2001-11-19 02:24:14 +00:00
François Gouget 1425941e29 Fix the #include order for config.h.
Add #include "config.h" directives where needed.
2001-11-06 20:57:11 +00:00
Francois Gouget 386cf6e342 When including 'wine/port.h', include it first.
Remove redundant 'config.h' includes.
2001-10-14 16:25:47 +00:00
Francois Gouget e5ddd26dd7 When including config.h, include it first. 2001-10-14 16:18:52 +00:00
Alexandre Julliard 5b1e934218 Avoid including winbase.h in generated .spec.c files. 2001-10-02 20:32:58 +00:00
Dmitry Timoshkov b56a2ef780 Add missing CALLBACK modifier. 2001-09-14 01:00:39 +00:00