Francois Gouget
896292a7fe
libwine: Like Linux, NetBSD has /proc/self/exe.
...
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-03 12:51:23 +02:00
Francois Gouget
728b6fc5e6
libwine: Fully dereference the /proc/self/exe symbolic link.
...
Linux will do it for us but not NetBSD. That is, if foo is an executable
that prints the path /proc/self/exe points to, on Linux one gets:
$ ./foo
/tmp/foo
$ ln -s foo bar
$ ln -s bar babar
$ /tmp/babar
/tmp/foo
But on NetBSD one gets instead:
$ ./foo
/tmp/./foo
$ ln -s foo bar
$ ln -s bar babar
$ /tmp/babar
/tmp/babar
Fully dereferencing /proc/self/exe is necessary to be able to run both
32 and 64 bit executables from the build tree.
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-03 12:51:16 +02:00
Alexandre Julliard
44dc9d7383
libwine: Remove some conditional code that was only needed for Windows.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-04 10:43:57 +02:00
Ken Thomases
ecd53057b5
libwine: On Mac, disable ASLR for Wine processes.
...
ASLR can allow dyld to be loaded where it overlaps one of the regions that the
preloader would like to reserve. That, in turn, can prevent Wine from using the
shared user data region. With ASLR disabled, dyld will be loaded immediately
after the preloader, which has a defined base address.
This uses an Apple extension to posix_spawn() that allows it to replace the
calling process's image, like a more featureful execve(). The flag to disable
ASLR is technically private SPI, but has remained stable for many versions of
the OS. And the Mac preloader is already stepping over that line.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-04 15:39:36 +01:00
Sebastian Lackner
a0ab2a7b0c
loader: Implement preloader for macOS.
...
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 11:10:09 +01:00
Alexandre Julliard
493129d638
libwine: Look for the 64-bit wineserver using the 64-bit loader symlink.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 13:24:19 +01:00
Alexandre Julliard
27254d849b
libwine: Add a helper function to read a symlink.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 13:10:15 +01:00
Alexandre Julliard
4ee9bbc889
libwine: Fall back to the WINELOADER path for the bin directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 13:38:00 +02:00
Alexandre Julliard
56b14d637f
libwine: Add a helper function to set the dll directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 13:37:25 +02:00
Alexandre Julliard
161f3fc417
libwine: Add a helper function to set the bin directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-26 13:32:38 +02:00
Alexandre Julliard
1fa7710ff9
makefiles: Get rid of the DLLPREFIX variable.
...
Android libraries will be handled differently.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 12:12:58 +09:00
Alexandre Julliard
a83c598c79
makefiles: Add support for specifying a prefix for installed library file names.
2013-09-26 14:35:45 +02:00
Alexandre Julliard
2b2bf64d3b
libwine: Put the server directory inside the wineprefix on Android.
2013-09-16 12:51:11 +02:00
Alexandre Julliard
876189a405
libwine: Don't add a user id to the server directory if not supported.
2013-09-16 12:43:07 +02:00
Alexandre Julliard
16c8ca8082
libwine: Use the argv[0] directory as bin directory only if all other methods fail.
2013-09-16 12:34:44 +02:00
Alexandre Julliard
cbdc795515
libwine: Avoid memrchr.
2012-06-06 12:39:48 +02:00
André Hentschel
57de68e876
libwine: Improve bin directory detection on kFreeBSD and DragonFly BSD.
2012-06-05 10:24:31 +02:00
Damjan Jovanovic
c296d1fbe1
libwine: Improve bin directory detection on FreeBSD.
2012-06-04 12:17:55 +02:00
Alexandre Julliard
b46ea8a5b8
libwine: Avoid compiler warnings for Mingw builds.
2012-01-17 15:02:45 +01:00
Gerald Pfeifer
11e811411c
libwine: Always build preloading code.
2012-01-17 11:52:19 +01:00
Alexandre Julliard
06f76236d1
libwine: Fall back to normal exec if the preloader doesn't exist.
2011-01-13 19:56:12 +01:00
Alexandre Julliard
5af634fd3b
libwine: Use the 64-bit preloader when starting 64-bit wine.
2010-12-16 20:02:18 +01:00
Marko Nikolic
0ffb137d4a
libwine: Removed sign comparison warning.
2010-07-26 18:38:32 +02:00
Alexandre Julliard
995e553715
libwine: Determine the bin directory independently from the lib directory if possible.
...
Prefer the bin directory when getting the data dir location.
2009-08-25 14:29:32 +02:00
Alexandre Julliard
d2a426a6ab
libwine: Don't try to use the preloader on non-i386.
2008-12-12 10:19:54 +01:00
Alexandre Julliard
662718160e
libwine: Allow to specify a non-existing directory as WINEPREFIX.
2008-04-21 15:48:12 +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
Paul Millar
8d571e28f1
libwine: Fix naked getuid() to allow compilation under MinGW.
2007-11-12 11:39:52 +01:00
Alexandre Julliard
65d865d963
libwine: Refuse to use a WINEPREFIX dir owned by a different user.
2007-11-08 12:21:10 +01:00
Andrew Talbot
4125821a99
winelib: Replace inline static with static inline.
2007-03-27 12:38:06 +02:00
Detlef Riekenberg
1c559eb474
libs/wine: Use xstrdup to avoid duplicate code.
2007-03-17 19:50:48 +01:00
Alexandre Julliard
6406f60ff3
libwine: Avoid a compiler warning on Solaris.
2006-09-12 11:01:57 +02:00
Alexandre Julliard
e43cec76d1
libwine: Remove one more directory level when checking for build dir.
...
This way it still works if the libdir we got was libs/wine instead of libs.
2006-06-19 22:45:28 +02:00
Alexandre Julliard
3fb4b32949
libwine: Fixed a compiler warning on MacOSX.
2006-06-15 14:14:26 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Mike McCormack
f7679b4594
libwine: Fix a memory leak.
2006-04-07 11:45:53 +02:00
Alexandre Julliard
5ff1004c4d
libwine: Export wine_get_build_dir.
2006-03-16 17:36:19 +01:00
Alexandre Julliard
bf566139d7
libwine: Added support for executing wine binaries out of the build dir.
2006-03-16 17:35:32 +01:00
Alexandre Julliard
77b3b92eb2
libwine: Added detection for Wine being run out of the build directory.
2006-03-16 17:35:14 +01:00
Alexandre Julliard
2f026d1694
libwine: Export a function to retrieve the data directory (based on a
...
patch by Dmitry Timoshkov).
2006-03-06 18:50:15 +01:00
Alexandre Julliard
1269f43c5a
libwine: Add the runtime library path to the front of the dll paths list.
2006-02-17 17:39:44 +01:00
Alexandre Julliard
e95a2c2111
libwine: Set the default bindir and dlldir from argv0 if dladdr is not available.
...
Added dependency on $(RELPATH).
2006-02-17 14:08:19 +01:00
Alexandre Julliard
8b5e11c341
libwine: Compute relative paths for bin and dll directories at compile time.
2006-02-17 11:43:10 +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
Alexandre Julliard
767ad69a45
libwine: Don't rely on argv[0] in wine_exec_wine_binary if we can get
...
the directory from the library itself.
Only try the hardcoded BINDIR if everything else failed.
2006-02-16 20:06:20 +01:00
Alexandre Julliard
ca6fd0d4ec
libwine: Only use the library directory if it's an absolute path.
2006-02-16 20:03:06 +01:00
Alexandre Julliard
0b34fb3656
libwine: Use dladdr if supported to get the run-time path of libwine.so
...
and define the default dll and bin directories relative to it.
2006-02-11 22:38:44 +01:00
Alexandre Julliard
6c1494b19c
Fix long standing regression in the building of the server directory
...
name (found by Nigel Rowe).
2004-12-20 18:55:18 +00:00
Steven Edwards
e7c3ab1874
Check for getuid and avoid the use of it in libwine if we don't have
...
it.
2004-10-04 20:45:49 +00:00
Alexandre Julliard
531dbbd8e7
Base the server directory name on the uid, not the username.
2004-09-27 20:50:37 +00:00