Commit Graph

1258 Commits

Author SHA1 Message Date
Alexandre Julliard 097867debd loader: Rename the elf_hash function to avoid conflicts. 2013-02-13 17:19:43 +01:00
Alexandre Julliard 3b8ab28c40 loader: Define our own auxv structure. 2013-02-13 17:19:42 +01:00
Alexandre Julliard 6f1932dbca loader: Hardcode Linux syscall numbers. 2013-01-21 16:00:07 +01:00
Ken Thomases c40a72223c loader: On Mac, embed Info.plist in (__TEXT, __info_plist) section. 2013-01-08 16:35:28 +01:00
Charles Davis a6fdf73233 loader: Build with -fno-builtin.
This prevents Clang from optimizing wld_memset() into a memset(3) call.
2012-12-26 18:23:03 +01:00
Charles Davis b51c2ba9f7 loader: On Mac OS with Clang, don't use external symbols for the DOS and shared heap segments. 2012-09-21 11:02:36 +02:00
André Hentschel 1491e7b99c loader: Add check for DragonFly BSD. 2012-05-29 10:46:50 +02:00
Charles Davis ec37157b06 loader: Fix constant address warning on Mac OS. 2011-10-08 19:47:26 +02:00
Łukasz Wojniłowicz 441f735f41 loader: Add Polish translation. 2011-06-06 21:49:24 +02:00
Eric Pouech 7b544af170 loader: Protect preloader against ELF file without loadable segments (clang). 2011-03-28 17:24:53 +02:00
Austin English 534196fba9 loader: Add missing checks for FreeBSD_kernel. 2011-01-17 14:27:44 +01:00
Alexandre Julliard 13eafa047d configure: Get rid of the replacement function for gettid. 2010-12-27 12:08:37 +01:00
Alexandre Julliard 7e112c2917 loader: Setup the TLS register on x86-64 for stack protector checks. 2010-12-21 19:38:27 +01:00
Alexandre Julliard 61d2d80795 loader: Define asm functions instead of inlines for x86-64 syscalls to avoid trouble with register constraints. 2010-12-18 12:33:29 +01:00
Alexandre Julliard 0a0862001b loader: Build the preloader for x86-64. 2010-12-16 17:59:24 +01:00
Alexandre Julliard fe031c937d loader: Use long instead of int in the preloader for anything that can store a pointer. 2010-12-16 16:53:24 +01:00
Alexandre Julliard 144cb78dba loader: Make sure the new stack is 16-byte aligned in the preloader. 2010-12-16 16:52:02 +01:00
Alexandre Julliard 15ccabc9a8 makefiles: Add common rules for installing the main man page. 2010-12-05 16:17:58 +01:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Harald Hoyer 2bea45dd0a preloader: Fix moving of auxiliary values. 2010-07-29 17:33:35 +02:00
Alexandre Julliard a49891f1e2 ntdll: Add a WINEARCH environment variable that allows forcing a specific 32- or 64-bit architecture. 2010-06-24 15:10:58 +02:00
André Hentschel 4ae5325016 wine.man: There is no configuration file. 2010-06-01 18:01:11 +02:00
Austin English df9fda760e loader: Remove mapat from map_so_lib, where it is unused. 2010-05-28 12:31:12 +02:00
Alexandre Julliard f3831cf2cb configure: Rename the 64-bit loader to wine64 and keep wine always for the 32-bit loader.
This provides better backwards compatibility when running with a
32-bit prefix.
2010-05-17 12:42:30 +02:00
Frédéric Delanoy 32ceee8bf1 loader: Fix French translation of wine manpage. 2010-04-16 12:10:30 +02:00
Frédéric Delanoy db7928c385 manpages: Fix formatting errors. 2010-04-09 11:47:05 +02:00
André Hentschel 68632904f6 loader/manpages: Replace all occurrence of bugs.sgml. 2010-03-31 16:34:50 +02:00
Alexandre Julliard 50c6ac8324 loader: Rename the 32-bit loader in the build tree too when doing a Wow64 build. 2010-03-29 17:53:30 +02:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Yann Droneaud 23e9104721 loader: Use __asm__ keyword instead of asm. 2009-10-27 10:50:02 +01:00
Alexandre Julliard fa6ffb4d5d Fix empty function prototypes. 2009-10-07 12:24:53 +02:00
Alexandre Julliard b1c235d364 loader: Build the loader with -D__WINESRC__. 2009-10-05 14:55:34 +02:00
Alexandre Julliard 3e6eab3fd9 configure: Rename the main binary to "wine32" for the Wow64 build. 2009-08-14 09:45:30 +02:00
Alexandre Julliard 9064777457 configure: Disable installation of a number of extra files for the Wow64 build. 2009-08-13 20:08:58 +02:00
Alexandre Julliard 4fda657a0a loader: Get rid of the pthread support routines. 2009-07-06 14:35:24 +02:00
Alexandre Julliard 4d35f3f270 preloader: Reserve addresses only up to 0x68000000, that should be enough for ole32. 2009-07-01 16:03:56 +02:00
Alexandre Julliard 1ac7576d47 ntdll: Disable releasing the address space on Mac OS since dyld doesn't support this. 2009-06-29 13:21:37 +02:00
Alexandre Julliard 8d833ee2e7 loader: Reserve some more memory to cover the native ole32 addresses. 2009-06-25 14:34:11 +02:00
Alexandre Julliard 691bdbd123 configure: Rename the shared heap segment to avoid a Mac OS linker bug with 16-char names. 2009-06-23 20:51:37 +02:00
Alexandre Julliard bfeaad0d45 loader: Add missing install dependency for extra binaries. 2009-03-30 15:05:17 +02:00
Alexandre Julliard 17c09347c0 loader: Don't bother checking for pthread.h existence, we require it anyway. 2009-03-30 15:05:07 +02:00
Alexandre Julliard 4aa98e030e include: Get rid of the definitions for the pthread emulation. 2009-03-26 13:26:57 +01:00
Alexandre Julliard 9701da43b0 loader: Fix installation for platforms that don't use extra binaries. 2009-03-23 15:52:18 +01:00
Alexandre Julliard f4a19c8463 loader: Merge the first and second stage loaders into a single wine binary. 2009-03-10 18:22:38 +01:00
Alexandre Julliard 0e446d5912 loader: Get rid of the no longer supported wine-kthread. 2009-03-02 12:29:32 +01:00
Alexandre Julliard 4ccf78fbcd loader: Start phasing out the LinuxThreads support. 2009-02-12 11:42:06 +01:00
Stefan Reimer 3dcd1285f1 loader: Fix build with gcc-4.3 and ssp. 2009-01-04 13:33:01 +01:00
Maarten Lankhorst 0a393d7eb4 loader: Implement setting %gs for amd64. 2008-12-01 14:05:16 +01:00
Alexandre Julliard 17ab587567 loader: Use a hidden function instead of an exported global variable to setup pthread functions. 2008-11-07 11:11:21 +01:00
Alexandre Julliard 912e4d4def loader: Reserve some space for the virtual heap too. 2008-11-07 11:05:38 +01:00
Alexandre Julliard 7f327237bf Convert remaining source files to utf-8. 2008-10-18 19:23:08 +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
John Reiser 0a2c94e823 configure: Add check for valgrind/valgrind.h. 2008-07-25 11:43:50 +02:00
Alexandre Julliard 7a4d575029 preloader: Silence the warning for the low 64k. 2008-05-05 19:46:15 +02:00
Alexandre Julliard 679aab877f loader: Add stub versions of the pthread functions. 2008-04-29 20:19:02 +02:00
Alexandre Julliard 195ca1e85f preloader: Reserve low memory areas in separate chunks. 2008-04-14 20:38:17 +02:00
Francois Gouget d8c41a25da Spelling fix in the ldt bitfields. 2008-04-14 12:40:22 +02:00
Alexandre Julliard 8505f1429d libwine: Export functions that return the Wine version number and build id. 2008-03-26 23:38:36 +01:00
Jonathan Ernst ff72b54445 loader: Updated French man page. 2008-01-15 14:35:07 +01:00
Austin English 5e10ef042c loader: Add disabling dlls to wine man page. 2008-01-11 12:47:53 +01:00
Alexandre Julliard c3b0addde6 Spelling fixes in French man pages. 2008-01-11 12:45:50 +01:00
Jonathan Ernst 1c0f2fe16a loader: New French man page for wine. 2008-01-11 12:40:11 +01:00
Eric Pouech aff968fb47 valgrind: Made Wine compliant will latest Valgrind macros (the one removed from 3.3.0 and deprecated since 3.2.0). 2007-12-24 13:30:39 +01:00
Marco Schuster fab0aee388 loader: Added de_DE.UTF-8 translated Wine man page. 2007-12-12 14:32:47 +01:00
Marco Schuster 0bd72d0a58 wine.man: Added small clarification for AppDB. 2007-12-12 14:29:45 +01:00
Vitaliy Margolen b7addaab6a wine.man: Document OSS environment variables. 2007-10-22 13:50:01 +02:00
Alexandre Julliard 1b8d9e03a9 loader: Set the address space limit before starting the preloader. 2007-09-21 10:43:45 +02:00
Tijl Coosemans 9f5c69c96d loader: Introduce FreeBSD loader. 2007-08-27 12:14:41 +02:00
Tijl Coosemans 60833da9f2 loader: Use thr_self syscall to get thread id on FreeBSD. 2007-08-09 15:01:04 +02:00
Alexandre Julliard 1f11333c7b makefiles: Build programs that link against libwine twice with appropriate rpaths.
One rpath is for installing and one is for running inside the build tree.
2007-06-20 20:03:30 +02:00
Andrew Talbot cb5dcc68f8 loader: Replace inline static with static inline. 2007-03-27 12:38:15 +02:00
Joris Huizer e1e54d1ee7 preloader: sign-compare fix. 2007-03-05 15:31:56 +01:00
Alexandre Julliard d62b5c6cd9 loader: Fix git-describe invocation to work with old git versions. 2007-01-15 13:02:00 +01:00
Alexandre Julliard 092ac1fbf5 preloader: Added printf format checking and fix some formats. 2007-01-11 12:46:06 +01:00
Alexandre Julliard 13029a2536 preloader: Remove reserved ranges that we failed to allocate. 2007-01-11 12:35:42 +01:00
Alexandre Julliard 4d9f3dfae1 preloader: Reset both AT_SYSINFO and AT_SYSINFO_EHDR when one of them conflicts. 2007-01-02 12:21:45 +01:00
Alexandre Julliard 150b5dcaef loader: Use the Mach thread port as thread id on Mac OS. 2006-12-29 20:02:02 +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 959113d270 loader: Try to detect glibc 2.3 without NPTL or TLS and print a warning. 2006-12-20 17:03:23 +01:00
Alexandre Julliard 338fc52491 kthread: Don't make the stack executable by default. 2006-12-05 15:42:53 +01:00
Saulius Krasuckas 06566a5347 loader: Use plain binary name of git-describe to avoid junk in version output. 2006-11-09 18:26:36 +01:00
Alexandre Julliard 5776a72361 loader: Update the reported version from the current git HEAD if available. 2006-11-06 13:33:11 +01:00
Alexandre Julliard bda2832d8d ntdll: Moved command-line help to the loader binary. 2006-11-06 13:04:56 +01:00
Alexandre Julliard 4c4094e86e preloader: Clear %gs again before calling the interpreter entry point. 2006-11-04 20:25:06 +01:00
Alexandre Julliard a68d293bae preloader: Setup a fake thread-local storage block pointed to by %gs. 2006-11-03 13:55:41 +01:00
Alexandre Julliard 181cf8b635 loader: Make sure the reserved area is protected on MacOSX too. 2006-10-12 14:55:52 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Alexandre Julliard 13a93b4a94 configure: Set rpath on all executables that link to libwine.
Also add the -multiply_defined suppress option for executables on MacOS.
2006-08-25 17:23:44 +02:00
Alexandre Julliard 4e4740346d Documentation updates. 2006-08-23 15:59:14 +02:00
Alexandre Julliard dd0340ef0a loader/kthread: Remove some unneeded #ifdefs, other platforms use pthread now. 2006-08-15 12:57:25 +02:00
Alexandre Julliard 5da3e551a2 loader: Exit the whole process when killing the last thread. 2006-08-11 20:12:38 +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
Tijl Coosemans fc8172f7ee loader/pthread: Added pthread_attr_get_np support. 2006-08-07 13:51:50 +02:00
Alexandre Julliard 30a3866b78 preloader: Added support for the new style DT_GNU_HASH symbol table. 2006-07-31 21:02:38 +02:00
Alexandre Julliard 51d8482222 preloader: Fixed type checking in symbol lookup. 2006-07-31 17:44:20 +02:00
Alexandre Julliard 8aab67d238 preloader: Properly use the ELF hash table when looking up a symbol. 2006-07-31 17:44:20 +02:00
Alexandre Julliard e325efbd8d preloader: Allocate more space in low memory as well as for top-down allocations. 2006-07-24 15:25:39 +02:00
Alexandre Julliard 875b5db17b preloader: Make sure the WINEPRELOADRESERVE area doesn't overlap the low memory area. 2006-07-19 15:06:16 +02:00
Alexandre Julliard c79cf02fae ntdll: Make sure to not unmap anything from reserved areas
when using NtFreeVirtualMemory with the MEM_SYSTEM flag.
2006-07-13 20:47:07 +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 e040e6c4f8 libwine: Added entry for sigprocmask in the pthread functions table. 2006-06-23 12:27:45 +02:00
Alexandre Julliard c6ad0201f4 wine-pthread: Set thread scope to force using kernel threads on Solaris. 2006-06-23 12:26:23 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Alexandre Julliard 6f38489f91 loader: Attempt to detect broken vmsplit setups. 2006-04-19 19:28:33 +02:00
Alexandre Julliard 0216c404dc preloader: Workaround for broken no-exec protections.
Add an executable page at the top of the address space to defeat
broken no-exec protections that play with the code selector limit.
2006-04-12 19:53:16 +02:00
Alexandre Julliard c20d6c4095 loader: Hide the preloader from the ps output. 2006-03-31 19:16:22 +02:00
Alexandre Julliard 1fd32cfa13 configure: Use --rpath when linking dlls too. 2006-03-20 22:08:26 +01:00
Alexandre Julliard 5ed59015b2 configure: Use --rpath if supported when building binaries to point to
the relative location of the wine libraries.
2006-02-20 11:20:47 +01:00
Alexandre Julliard 266391744d configure: Default to building wine-pthread on non-x86 platforms. 2006-02-17 14:12:29 +01:00
Alexandre Julliard 9dffd134dd libwine: Try the current load path in priority before the
WINELOADER/WINESERVER environment variables in wine_exec_wine_binary.
2006-02-16 20:26:55 +01:00
Emmanuel Maillard aaae6606cb loader: Reserve memory area on Darwin (based on Steve Zellers patch). 2006-02-15 13:52:02 +01:00
Mike Frysinger 5392844392 Add support for 'make install DESTDIR'. 2006-02-14 13:51:38 +01:00
Eric Pouech 4642e1e441 loader: Added missing attr destroy. 2006-02-14 11:34:58 +01:00
Eric Pouech e66e227dbe Fixes for missing prototypes warnings. 2006-02-06 13:13:28 +01:00
Mike McCormack 7cd9a8f8dc preloader: Allow compiling the preloader with -fstack-protector. 2006-01-26 13:21:54 +01:00
Alexandre Julliard 538cd17859 loader: Detect pthread_get_stackaddr_np returning the top of the stack
instead of the base.
2006-01-24 15:11:58 +01:00
Alexandre Julliard cfe45cc130 Get rid of the no longer needed DECL_GLOBAL_CONSTRUCTOR macro. 2006-01-14 17:08:52 +01:00
Alexandre Julliard 0577113e35 preloader: Reserve some space for the shared user data. 2005-12-14 12:19:18 +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
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 43c6396e94 Use int instead of long in interlocked_* functions for 64-bit
compatibility.
2005-09-26 13:51:58 +00:00
Alexandre Julliard 7e4c88c6d9 Avoid some warnings on 64-bit platforms. 2005-09-13 11:07:14 +00:00
Alexandre Julliard 883d3c52d3 Use explicit function pointers for pthread support instead of relying
on ELF symbol overriding.
2005-09-03 15:11:29 +00:00
Alexandre Julliard 5729f58b68 Move the loader a bit higher in memory to leave more space for ntdll
and kernel32.
2005-06-17 10:22:46 +00:00
Alexandre Julliard 8dd4ee76c4 Moved the wine manpage to the loader/ directory. 2005-06-15 10:25:40 +00:00
Marcus Meissner 2b6e7dad58 Elf32_auxv_t.a_un.a_ptr no longer exists in HEAD glibc CVS, use
a_val.
2005-06-02 10:30:08 +00:00
Francois Gouget 821d4c4645 Fix nativeapi.pm so it knows about AC_HEADER_STAT().
Make the error message about unexpected '#ifdef HAVE_XXX' clearer.
Protect sys/stat.h #includes with the corresponding '#ifdef HAVE_XXX'
check.
2005-05-06 16:22:54 +00:00
Aaron Arvey a31a75244c Added __bb_init_func for linking purposes. 2005-04-15 16:13:49 +00:00
Mike Hearn fa153c62dd Increase PE reserve area size to 512Mb. 2005-03-22 16:42:25 +00:00
Rémi Assailly 193d527736 char -> const char fixes. 2005-01-28 14:02:52 +00:00
Peter Chapman 505dfdefb5 Fix up several inline assembler blocks so that they produce correct
code with the -fomit-frame-pointer gcc flag.
2004-12-02 18:19:25 +00:00
Hans Leidekker cbaa545fff Protect use of pthread functions with #ifdef HAVE_PTHREAD_H. 2004-10-19 03:57:05 +00:00
Alexandre Julliard ce0e8f2998 Restore lost chunk of previous patch. 2004-10-18 21:43:50 +00:00
Vincent Béron 2c1b35dd17 Add some more Alpha asm code and Alpha-specific parts. 2004-10-18 21:27:52 +00:00
Vincent Béron d17c162c4c Fix the declaration of pthread_mutexattr_gettype(). 2004-10-18 19:33:16 +00:00
Alexandre Julliard e9f2eb5241 Support compiling with -fPIC for people who somehow think this is a
good idea.
2004-09-24 00:25:32 +00:00
Alexandre Julliard 06233cfb47 Avoid some non-portable makefile constructs. 2004-08-11 20:59:09 +00:00
Emmanuel Maillard d110e1f264 wine_pthread_init_thread: retrieve the stack info on Darwin. 2004-07-21 03:06:03 +00:00
Alexandre Julliard 0c8d6908df Avoid using strlen. 2004-07-06 18:46:05 +00:00
Mike McCormack 2113bd43f1 Define AT_SYSINFO_* if it's missing. 2004-06-28 20:28:05 +00:00
Alexandre Julliard f558741fab Remove the AT_SYSINFO and AT_SYSINFO_EHDR values if the sysinfo page
is in one of our reserved ranges.
2004-06-26 00:12:20 +00:00
Alexandre Julliard 9bfe0c4ec4 Use wine_dlsym instead of dlsym to avoid the glibc dlerror bug.
Call dlsym with RTLD_DEFAULT for symbols that we don't redefine to
work around another glibc bug.
2004-06-24 04:07:22 +00:00
Alexandre Julliard bfac60bfeb Do direct Linux system calls in the preloader to avoid trouble with
some broken static libcs.
2004-06-22 02:42:05 +00:00
Alexandre Julliard c3193925d8 Add the preloader itself as argv[0] and remove it again before running
the real loader, this way the ps output makes more sense.
2004-06-15 20:31:06 +00:00
Francois Gouget 497709b9bb Assorted spelling and case fixes. 2004-06-15 20:26:45 +00:00
Alexandre Julliard 9af2bd4803 Yet another fix for the MacOS X environ brain damage. 2004-06-14 17:07:30 +00:00
Alexandre Julliard 9f33a4b109 Make it possible to add auxiliary values to the existing array; this
is required for older kernels.
2004-06-03 23:36:01 +00:00
Alexandre Julliard 92425aab60 Added support for specifying the PE exe address range through the
WINEPRELOADRESERVE environment variable.
2004-06-02 21:40:00 +00:00
Alexandre Julliard 6d2099f4f8 A few small fixes. 2004-06-01 19:47:11 +00:00
Alexandre Julliard 910234eafb Pass the environ variable from main to try to avoid Darwin's
_NSGetEnviron() ugliness.
2004-05-29 00:26:03 +00:00
Alexandre Julliard b1abca8a5d Initial version of the Wine preloader, used to reserve memory
areas at startup. Based on the work of Mike McCormack.
2004-05-28 20:59:22 +00:00
Alexandre Julliard 94d74b5fed Added support for managing reserved memory areas in libwine and ntdll.
Try to reserve everything above 0x80000000 on startup.
2004-05-25 01:29:24 +00:00
Alexandre Julliard b64c627022 Fixed rounding bug in the stack info calculation when we don't have
pthread_getattr_np.
2004-03-30 05:13:35 +00:00
Patrik Stridvall ede82e3055 Fixed some issues found by winapi_check. 2004-02-20 20:19:23 +00:00
Alexandre Julliard a4d1826c69 Better fix for the thread exit race on pthreads. 2004-02-11 23:58:46 +00:00
Alexandre Julliard 9591679bf2 Don't depend on the name of the main binary, always load
wine-[kp]thread no matter what.
2004-02-11 04:19:43 +00:00
Alexandre Julliard 163396b955 Revert the thread exit race fix for now, it doesn't work right on
pthreads.
2004-02-05 17:45:31 +00:00
Alexandre Julliard 4fac95df3d Fixed a couple of race conditions in the wine_pthread routines at
thread startup and exit.
2004-02-05 02:01:35 +00:00
Alexandre Julliard f223b8fe2d Disable the exec shield workaround for now, it's causing too much
trouble.
2004-01-20 00:28:01 +00:00
David Beck ef7087a5ee Added RFTHREAD flag in rfork call. 2003-12-30 21:53:32 +00:00
Alexandre Julliard c6d44be3e5 Create a huge array in bss to reserve the memory area we need for PE
binaries, to prevent exec shield from mapping system libraries there.
2003-11-22 00:08:26 +00:00
Alexandre Julliard 821ab8636f Added configure check for pthread_getattr_np. 2003-11-12 22:44:56 +00:00
Alexandre Julliard a628c13e90 Added a wine-glibc binary that detects the glibc threading in use and
execs the corresponding wine binary.
Removed the --with-nptl configure option.
2003-11-12 03:28:21 +00:00
Alexandre Julliard b2d937d5d9 Added sigsetjmp/siglongjmp and gettid to the portability library. 2003-11-12 03:16:00 +00:00
Alexandre Julliard 546839f408 Only build both Wine binaries on Linux, pthread support doesn't work
on other platforms.
2003-11-11 00:48:21 +00:00
Alexandre Julliard 50fba7ffec Moved the remaining SYSDEPS_* functions to the wine_pthread interface.
Let the pthread library allocate the stack itself.
2003-11-09 01:25:23 +00:00
Alexandre Julliard f45325e443 Create two separate wine binaries, one using libpthread and one using
kernel threading directly.
Get rid of the remaining HAVE_NPTL ifdefs.
Remove the scheduler directory.
2003-11-06 23:05:41 +00:00
Alexandre Julliard 357c7401b9 Re-use the loader directory for the main wine loader, and get rid of
the miscemu directory.
2003-11-06 01:17:56 +00:00
Alexandre Julliard b9efd4afcb Moved loader/module.c to dlls/kernel. 2003-11-06 01:09:58 +00:00
Dmitry Timoshkov 45ac9cd287 Convert GetBinaryType to unicode. 2003-10-14 01:16:59 +00:00
Alexandre Julliard b81d9e7cf4 Link all remaining files that contain kernel APIs into kernel32.dll
instead of ntdll.dll. Removed a number of no longer needed files.
2003-10-08 03:57:02 +00:00
Alexandre Julliard 4137aecaa5 Changed LdrLoadDll to only search for the dll in the specified path,
using ntdll functions.
Moved LOAD_WITH_ALTERED_SEARCH_PATH functionality to LoadLibraryEx
where it belongs.
2003-10-02 04:58:49 +00:00
Jon Griffiths 4c1fa161a3 Documentation updates. 2003-10-01 03:20:21 +00:00
Alexandre Julliard a33f318ffc Avoid depending on MODULE_GetBinaryType in load_library_as_datafile. 2003-09-26 04:35:44 +00:00
Alexandre Julliard 2052538a47 Moved loadorder support to dlls/ntdll.
Removed the --dll option and replaced it by the WINEDLLOVERRIDES
environment variable.
2003-09-25 20:33:41 +00:00
Alexandre Julliard a37e7608c7 Moved 32-bit relay and snoop support to dlls/ntdll. 2003-09-19 04:32:39 +00:00
Alexandre Julliard 97ad311e71 Moved the 32-bit builtin loader and the remaining bits of the PE
loader into dlls/ntdll/loader.c.
2003-09-19 04:04:57 +00:00
Alexandre Julliard ba71316172 Moved a couple more functions to dlls/kernel. 2003-09-18 20:59:54 +00:00
Alexandre Julliard 8db8368ee7 Keep the file handle of 16-bit modules open while the module is
loaded. This makes it possible to remove the InstallShield hack in
OpenFile16.
Moved LoadLibrary32_16 to kernel.
2003-09-18 04:35:34 +00:00
Alexandre Julliard aaf3503ea5 Moved almost all remaining process, thread, fiber and exception
functions to dlls/kernel.
2003-09-17 05:31:32 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard 7df1b9e03a Start using the exported TEB structure from winternl.h where
possible.
2003-08-28 19:57:35 +00:00
Alexandre Julliard 6aca040f86 Moved a few more functions to dlls/kernel. 2003-08-26 02:29:48 +00:00
Alexandre Julliard 0ac9690081 Moved 16-bit relay and snoop support to dlls/kernel. 2003-08-26 02:28:59 +00:00
Alexandre Julliard 9ca159b61a Moved 16-bit builtin module handling to dlls/kernel/ne_module.c. 2003-08-23 23:07:10 +00:00
Alexandre Julliard 5fbb446cfc Moved most of the 16-bit task support and NE module loader to
dlls/kernel.
2003-08-23 00:03:40 +00:00
Alexandre Julliard d8e34ebc21 Renamed system.dll to system.drv. 2003-08-19 03:27:45 +00:00
Dmitry Timoshkov 6f66c1c75b Windows ignores values of e_cparhdr and e_crlc of the MZ header. 2003-08-18 19:51:42 +00:00
Pierre d'Herbemont 89321f49bd Add Mach-O (Darwin file format) support. 2003-07-21 20:02:50 +00:00
Francois Gouget 3ca761220a Spelling fixes (s/occured/occurred/ and variants). 2003-07-15 20:53:39 +00:00
Alexandre Julliard d27b8c96eb Avoid accessing uninitialized variable in TASK_Create (spotted by
Robert Shearman).
2003-07-02 04:32:38 +00:00
Eric Pouech 675b75597b - removed next & prev fields from WINE_MODREF and implement instead
the three linked lists in LDR_MODULE
- added PEB_LDR_DATA structure to PEB
- removed a couple of no longer needed global & static variables
2003-07-01 03:38:56 +00:00
Alexandre Julliard 6bc5091160 Start to make use of the proper PEB structure for process
information.
2003-05-22 03:44:01 +00:00
Alexandre Julliard 7c836cf954 Moved a couple of 16-bit module functions from to loader/ne/module.c. 2003-05-21 18:32:17 +00:00
Alexandre Julliard 81e72d8f2d Moved all process initialisation code to process.c and removed
loader/main.c.
2003-05-20 19:21:43 +00:00
Alexandre Julliard c7a51eec43 Only create the 16-bit dummy module when we need really it. 2003-05-20 02:32:26 +00:00
Alexandre Julliard 54100873d3 Avoid using the MapHModule functions. 2003-05-16 20:17:52 +00:00
Alexandre Julliard 1ed73fae13 Call the user signal proc for exe modules too, to avoid duplicating
the module cleanup code.
2003-05-16 20:16:56 +00:00
Alexandre Julliard c963e25c0e Get rid of the 32-bit user signal proc since we always run builtin
USER now.  Moved USER module cleanups to the 16-bit signal proc.
2003-05-15 23:11:00 +00:00
Alexandre Julliard adb532903c Rewrote module TLS support and moved it to ntdll. 2003-05-14 19:51:14 +00:00
Alexandre Julliard d9bab57477 Added support for calling the TLS callback functions. 2003-05-08 04:13:26 +00:00
Alexandre Julliard ce4d111cd8 Moved the EnumResource* functions to the kernel dll, and fixed their
prototypes.
2003-05-07 03:21:26 +00:00
Alexandre Julliard 424202bd9a Moved most of the kernel resource APIs to dlls/kernel. 2003-04-30 00:53:23 +00:00
Alexandre Julliard fedc411743 Moved the functionality of starting Win16 and DOS programs from the
common process startup into a separate winevdm application.
2003-04-27 00:47:58 +00:00
Alexandre Julliard 7dd3f7c786 Silently ignore 'so' loadorder in the config file instead of
displaying an error.
2003-04-27 00:40:23 +00:00
Alexandre Julliard 0412cc55d2 Rewrote most of the import fixup code to avoid doing redundant work
for every entry point. Moved it all to dlls/ntdll/loader.c.
Various optimizations in the other loader routines.
2003-04-05 05:16:11 +00:00
Alexandre Julliard 5980477dcc Fetch the exe module directly from the PDB instead of calling
LdrGetDllHandle.
2003-04-05 05:13:33 +00:00
Alexandre Julliard 39f73ddeaa Merged PE_InitDLL into MODULE_InitDLL.
Fixed a few traces.
2003-04-04 19:50:17 +00:00
Eric Pouech 69dc0d93d5 Removed no longer needed MODREF.find_export field. 2003-03-21 21:27:16 +00:00
Eric Pouech 7b91b82680 Rewrote mapping of module into memory using only NTDLL APIs. 2003-03-21 00:46:08 +00:00
Alexandre Julliard 195574e2d8 Added memcpy_unaligned to libwine_port. 2003-03-20 23:44:36 +00:00
Eric Pouech 19e050eb6f Moved WINE_MODREF.flags to WINE_MODREF.ldr.Flags, and make use of the
same flags values as Win2000.
2003-03-20 23:40:08 +00:00
Eric Pouech f94c8b85b9 Move some fields (refCount, tls_index and module) from WINE_MODREF to
LDR_MODULE.
2003-03-20 22:05:26 +00:00
Eric Pouech 9b79d698b2 Moved the module loading/unloading code and the remaining needed
static variables to ntdll.
2003-03-20 04:55:59 +00:00
Alexandre Julliard 500a2f95f7 Partially implemented LdrLock/UnlockLoaderLock. 2003-03-20 04:29:21 +00:00
Alexandre Julliard 03e4ea1789 Make GetModuleFileNameA call GetModuleFileNameW. Small cleanups. 2003-03-18 20:07:12 +00:00
Eric Pouech 84d1a8ff8c - added LDR_MODULE structure to WINE_MODREF and made dummy filling of
this structure
- implementation of LdrFindEntry
- implementation of GetModuleFileName[AW] on top of LdrFindEntry
2003-03-18 18:29:13 +00:00
Alexandre Julliard 803b5686ef Cleaned up load_library_as_datafile(). 2003-03-14 23:17:45 +00:00
Eric Pouech 32872b1a57 - implementation of LdrLoadDll out of loader/module.c
- in impacted functions, ensure that we only use ntdll functions
- for internal loading, start using NTDLL style for error reporting
- making use of new LdrLoadDll
2003-03-14 05:01:20 +00:00
Eric Pouech 1efa50e47e - implementation of LdrUnloadDll out of loader/module.c
- in impacted functions, ensure that we only use ntdll functions
- making use of new LdrUnloadDll
2003-03-14 04:00:52 +00:00
Eric Pouech f3a73ef7af - implemented LdrGetProcedureAddress and made use of it for
GetProcAddress
- implemented LdrGetDllHandle and made use of it in GetModuleHandle
- removed MODULE_DllThreadDetach from loader/module.c (should have
  been removed in a previous patch)
2003-03-06 23:41:37 +00:00
Eric Pouech d4fcc4bd06 Removed SO loading type. 2003-03-05 02:50:25 +00:00
Eric Pouech 7d6096480a - added Ldr* information to include/winternl.h
- exported a few functions/global vars from module.h while we move
  code from loader/module.c to dlls/ntdll/loader.c
- implemented LdrShutdownProcess, LdrShutdownThread and
  LdrDisableThreadCalloutsForDll (and made use of them)
2003-03-04 04:36:56 +00:00
Alexandre Julliard 60d40cd246 Only do the unload_dll server call at the time we actually unload the
dll.
2003-02-28 21:52:08 +00:00
Alexandre Julliard ce13153821 Moved LDT selector allocation routines to libwine.
Added support for correct locking of all LDT operations.
Added separate functions to manipulate the %fs selector, which allows
using a global GDT selector on recent Linux kernels.
2003-02-26 20:34:45 +00:00
Alexandre Julliard ac13d2f47e Print thread ids in traces with only 4 digits now that they are small
integers.
2003-02-18 23:29:47 +00:00
Alexandre Julliard 851d25d977 Set default loadorder to native for dlls that contain an explicit
path.
2003-02-17 01:49:47 +00:00
Warren Baird 39f73a2203 Increase size of insufficiently big stack allocated buffer used for
error messages in ELF_LoadLibraryExA.
2003-02-12 01:17:55 +00:00
Rein Klazes 33be954e62 In PE_fixup_imports report "module file not found" only in case of a
"file not found" error. Otherwise report failure and error number.
2003-02-11 22:21:24 +00:00
Matthew Davison 60009b9a56 Removed calls to HEAP_strdupAtoW. 2003-01-23 23:07:38 +00:00
Dimitrie O. Paun 297f3d898d Define NONAMELESS{STRUCT,UNION} explicitly in the files that need them. 2003-01-07 20:36:20 +00:00
Alexandre Julliard bcf41605d2 Debug channels cleanup. 2002-12-17 21:09:50 +00:00
Alexandre Julliard df357055e2 Don't crash in DirectedYield16 if no other task is running. 2002-12-13 00:39:17 +00:00
Dimitrie O. Paun 737d4be892 Move excpt.h out of include/msvcrt/ as it does not conflict with any
standard Unix header.
2002-12-12 23:34:01 +00:00
Alexandre Julliard 309b37023d Also trace implicitly loaded dlls for +loaddll. 2002-12-12 22:05:22 +00:00
Patrik Stridvall 75dee506ae Replace 0x%p with %p. 2002-12-05 19:56:15 +00:00
Alexandre Julliard 9169729b0b Merged font.h and path.h into gdi.h. Moved x11font.h to
dlls/x11drv. Removed a number of unnecessary #includes.
2002-12-03 19:18:41 +00:00
Alexandre Julliard 11f361a29c Removed no longer needed PROFILE_LoadWineIni(). 2002-11-23 02:24:53 +00:00
Andrew John Hughes ed800c69c8 Build ntdll with -DSTRICT. 2002-11-21 03:45:01 +00:00
Alexandre Julliard 82aeebd783 Added wrapper to replace llseek+lread to avoid HANDLE/HFILE
conversions.
2002-11-21 00:04:01 +00:00
Jukka Heinonen 1a665058e8 Removed last users of msdos/interrupts.c. 2002-11-21 00:02:09 +00:00
Eric Pouech d09b9ccb39 Don't fully process FreeLibrary when process is stopping. 2002-11-15 04:14:27 +00:00
Patrik Stridvall cf07e10017 Don't use wine/unicode.h in the header files, include it directly
where needed instead.
2002-10-23 20:20:59 +00:00
Patrik Stridvall 1298eb4053 Fixed mismatches between the Wine headers and the Microsoft headers. 2002-10-23 18:50:10 +00:00
Alexandre Julliard f3215eba4a Get/SetFastQueue16 should use HQUEUE16 handles. 2002-10-19 17:20:44 +00:00
Alexandre Julliard 9534d4f0fe Added wine_memcpy_unaligned function to avoid gcc memcpy
optimizations.
2002-10-18 00:27:38 +00:00
Alexandre Julliard c5c48eb677 Fixed reference count handling to support LoadLibrary during a process
attach.
2002-10-15 02:25:19 +00:00
Alexandre Julliard 613ead7f0f Fixed some handle conversions in prevision of void* handles. 2002-10-04 00:27:10 +00:00
Dimitrie O. Paun e70d08be31 By default, we should use our own dlls. 2002-09-25 00:16:52 +00:00
Patrik Stridvall b5bb32c09a Fixed some issues found by winapi_check. 2002-09-24 18:29:39 +00:00
Michael Stefaniuc 9d2b862883 Convert HRSRC to a void*. 2002-09-16 22:47:05 +00:00
Alexandre Julliard 81bdcf126f Removed references to advapi32 registry functions from some of the
kernel functions.
2002-09-13 17:47:44 +00:00
Patrik Stridvall 9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Patrik Stridvall 51e6c0ccb1 MSVC compatibility fixes. 2002-08-31 19:04:14 +00:00
Alexandre Julliard 3fa613cf61 Moved internal context macros out of winnt.h.
Added SET_AX etc. macros to avoid non-portable pointer manipulations.
2002-08-31 18:47:00 +00:00
Patrik Stridvall 9aab47ed24 MSVC compatibility fixes. 2002-08-28 23:42:34 +00:00
Mike McCormack f5d21eb2bf Don't cache file handles for NE executable modules so that we don't
lock the CDROM.
2002-08-27 02:05:21 +00:00
Dmitry Timoshkov d75aed2c92 Convert most of the file APIs to Unicode. 2002-08-27 01:13:58 +00:00
Dmitry Timoshkov 1467bbd5a4 Relax a bit PE consistency checks.
Return BINARY_DOS type if extended header was not recognized.
2002-08-27 00:34:41 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00
Alexandre Julliard 0eec45a97b Force loadorder of 16-bit dlls to builtin if their 32-bit counterpart
has already been loaded as builtin.
2002-08-16 20:02:54 +00:00
Dmitry Timoshkov 10cd651ef3 Set up exception handler around WEP call. 2002-08-16 01:44:21 +00:00
Alexandre Julliard befbb0e441 Make behavior of builtin executables closer to that of builtin dlls.
Fixed case sensitivity of builtin executables.
2002-08-14 21:12:58 +00:00
Alexandre Julliard a5dea216cc Implemented the RtlImage* functions, and use them to replace the
PE_HEADER macro.
2002-08-09 19:57:38 +00:00
Alexandre Julliard 526531eb6c Create at most one glue file for a single dll.
Avoid the intermediate .tmp.o file when building programs.
2002-08-01 18:36:58 +00:00
Alexandre Julliard 7375597fe2 Fixed some handle type mismatches and added a few casts in prevision
of void* handles.
2002-07-31 19:26:03 +00:00
Alexandre Julliard 267ca68253 Fixed HANDLE<->HFILE conversions, since they will be different types
when handles are void*.
2002-07-31 17:20:00 +00:00
Alexandre Julliard 29f265fab1 Set the correct permissions on the PE image sections. 2002-07-29 23:59:26 +00:00
Alexandre Julliard 13f2a17eb2 Convert HTASK to void* (based on a patch by Michael Stefaniuc). 2002-07-28 23:48:27 +00:00
Alexandre Julliard 891d23e57f Added support for ordinal hint in PE_FindExportedFunction. 2002-07-24 19:04:41 +00:00
Alexandre Julliard 7015ce3096 No need to call GetModuleFileName16 now that GetModuleFileNameA
handles 16-bit tasks.
2002-07-05 01:28:10 +00:00
Alexandre Julliard 83886f23fa Fixed GetModuleFileNameW return value.
Quiet dll loading error message.
2002-07-05 01:27:19 +00:00
Joshua Thielen 1cef2974ab Changed GetModuleFileNameA to use GetCurrentTask instead of
MODULE32_LookupHMODULE when called by a 16-bit task.
2002-07-05 00:16:41 +00:00
Alexandre Julliard 958732d21c Fixed warnings. 2002-07-02 02:09:39 +00:00
Alexandre Julliard 69622dbdcc Added support for path wildcards of the form "*dllname" in load order
specifications.
Only use wildcard entry for dlls that don't specify an explicit path.
Removed the old DllOverrides syntax support.
Misc cleanups and optimizations.
2002-06-25 00:23:23 +00:00
Alexandre Julliard bc524e92d2 Avoid loading programs into the DOS memory area. 2002-06-20 22:54:26 +00:00
Alexandre Julliard 2ad28d62d7 Don't go through the export table if we are not tracing anything. 2002-06-13 21:54:12 +00:00
Alexandre Julliard 221b438287 Don't free the stack selector, it's freed in ExitThread anyway (thanks
to Christian Costa).
2002-06-04 17:55:48 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Alexandre Julliard 55e845d11b Removed most inclusions of options.h.
Removed a few no longer used PROFILE_* functions.
2002-05-23 19:40:18 +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 3536316a31 New loading scheme for Winelib apps, makes them behave like builtin
dlls and takes load order into account. Install them in dlldir.
Improved MODULE_GetBinaryType to recognize ELF binaries.
Added a wrapper script to setup the environment when running directly
from inside the source tree.
2002-05-22 21:32:49 +00:00
Francois Gouget 2204b50a95 Fixed the WinExec prototype. 2002-05-19 22:21:45 +00:00
Alexandre Julliard 0aa28b5b8d Export the debugging API from libwine instead of ntdll.
Removed debugres_[aw].
2002-05-17 02:55:48 +00:00
Alexandre Julliard 9bb05fc48e Specify the complete source file list for a dll inside the main
makefile and get rid of the subdirectories makefiles.
2002-05-14 18:36:54 +00:00
Andreas Mohr 01c8ec3a9c Spelling/error messages fixes. 2002-04-02 19:47:30 +00:00
Eric Pouech cb934a116a Removed a couple of now obsolete FIXMEs. 2002-04-01 21:03:30 +00:00
Alexandre Julliard c4912ecd5f Don't strip out .exe extension. 2002-03-28 22:06:56 +00:00
Alexandre Julliard 6db8abaf93 Removed service thread support. 2002-03-23 20:46:41 +00:00
Alexandre Julliard 55ce53d5d7 Properly handle loadorder specifications containing a .dll extension. 2002-03-22 01:01:09 +00:00
Alexandre Julliard aeb566052f Correctly fill parent pid, module size and module name in process and
module snapshots. Based on patches by Eric Pouech and Andreas Mohr.
2002-03-22 00:21:23 +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
Peter Hunnisett 73ab649ced New file msvcrt/excpt.h. Move some stuff out of winnt.h into it. 2002-02-25 20:10:35 +00:00
Patrik Stridvall 57e5784c21 Move __stdcall/__cdecl to the right place. 2002-02-02 18:42:11 +00:00
Alexandre Julliard 64781643dd Do not use the PEB lock as loader lock, use a separate critical
section for that (and for the graphics drivers).
2002-02-02 18:13:50 +00:00
Alexandre Julliard cd3afa895b LOAD_LIBRARY_AS_DATAFILE modules must be mapped like normal files, not
like PE images. Fixed resource loading to handle that.
2002-01-31 23:32:57 +00:00
Bill Medland ca5b201310 Prevent trying to handle uninitialised memory as a string. 2002-01-18 18:58:08 +00:00
Alexandre Julliard 7c822cc0dc Removed obsolete dosmod. 2002-01-06 18:38:45 +00:00