Commit Graph

989 Commits

Author SHA1 Message Date
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