Robert Millan : Enable for GNU/kFreeBSD the same kernel-specific
interface/parameter
Alexandre Julliard
julliard at wine.codeweavers.com
Sun Feb 5 06:52:49 CST 2006
Module: wine
Branch: refs/heads/master
Commit: 8800352477f93de6bf1a8571a564fddb1e6dc5bb
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=8800352477f93de6bf1a8571a564fddb1e6dc5bb
Author: Robert Millan <rmh at aybabtu.com>
Date: Sun Feb 5 13:06:50 2006 +0100
Enable for GNU/kFreeBSD the same kernel-specific interface/parameter
that is used with FreeBSD.
---
configure | 2 +-
configure.ac | 2 +-
dlls/kernel/heap.c | 4 ++--
dlls/ntdll/directory.c | 4 ++--
dlls/ntdll/file.c | 2 +-
dlls/ntdll/signal_i386.c | 8 ++++----
dlls/winsock/socket.c | 2 +-
libs/wine/ldt.c | 4 ++--
libs/wine/mmap.c | 4 ++--
server/context_i386.c | 2 +-
10 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/configure b/configure
index f4887d9..2d3080b 100755
--- a/configure
+++ b/configure
@@ -13019,7 +13019,7 @@ case $host_os in
esac
case $host_os in
- linux*)
+ linux* | k*bsd*-gnu)
case $host_cpu in
*i[3456789]86*) WINE_BINARIES="wine-glibc wine-kthread wine-pthread wine-preloader"
;;
diff --git a/configure.ac b/configure.ac
index 310b2e3..f3e961e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1091,7 +1091,7 @@ case $host_os in
esac
case $host_os in
- linux*)
+ linux* | k*bsd*-gnu)
case $host_cpu in
*i[[3456789]]86*) AC_SUBST(WINE_BINARIES,"wine-glibc wine-kthread wine-pthread wine-preloader") ;;
*) AC_SUBST(WINE_BINARIES,"wine-glibc wine-kthread wine-pthread") ;;
diff --git a/dlls/kernel/heap.c b/dlls/kernel/heap.c
index 19d4b5b..3df7bbc 100644
--- a/dlls/kernel/heap.c
+++ b/dlls/kernel/heap.c
@@ -1138,7 +1138,7 @@ BOOL WINAPI GlobalMemoryStatusEx( LPMEMO
#ifdef linux
FILE *f;
#endif
-#if defined(__FreeBSD__) || defined(__NetBSD__)
+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__)
int *tmp;
int size_sys;
int mib[2] = { CTL_HW };
@@ -1209,7 +1209,7 @@ BOOL WINAPI GlobalMemoryStatusEx( LPMEMO
/ (TotalPhysical / 100);
}
}
-#elif defined(__FreeBSD__) || defined(__NetBSD__)
+#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__)
mib[1] = HW_PHYSMEM;
sysctl(mib, 2, NULL, &size_sys, NULL, 0);
tmp = malloc(size_sys * sizeof(int));
diff --git a/dlls/ntdll/directory.c b/dlls/ntdll/directory.c
index b07174d..6b18d5f 100644
--- a/dlls/ntdll/directory.c
+++ b/dlls/ntdll/directory.c
@@ -288,7 +288,7 @@ static char *parse_mount_entries( FILE *
}
#endif
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
#include <fstab.h>
static char *parse_mount_entries( FILE *f, dev_t dev, ino_t ino )
{
@@ -391,7 +391,7 @@ static char *get_default_drive_device( c
}
RtlLeaveCriticalSection( &dir_section );
-#elif defined( __FreeBSD__ )
+#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__ )
char *device = NULL;
int fd, res = -1;
struct stat st;
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index b817283..2293800 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -1594,7 +1594,7 @@ NTSTATUS FILE_GetDeviceInfo( int fd, FIL
info->DeviceType = FILE_DEVICE_DISK_FILE_SYSTEM;
break;
}
-#elif defined(__FreeBSD__)
+#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
struct statfs stfs;
/* The proper way to do this in FreeBSD seems to be with the
diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c
index d82c7bb..be5164d 100644
--- a/dlls/ntdll/signal_i386.c
+++ b/dlls/ntdll/signal_i386.c
@@ -204,7 +204,7 @@ typedef struct trapframe SIGCONTEXT;
#endif /* bsdi */
-#if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__)
typedef struct sigcontext SIGCONTEXT;
@@ -328,7 +328,7 @@ typedef ucontext_t SIGCONTEXT;
#endif /* __APPLE__ */
-#if defined(linux) || defined(__NetBSD__) || defined(__FreeBSD__) ||\
+#if defined(linux) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) ||\
defined(__OpenBSD__) || defined(__EMX__) || defined(__CYGWIN__)
#define EAX_sig(context) ((context)->sc_eax)
@@ -358,7 +358,7 @@ typedef ucontext_t SIGCONTEXT;
#define FAULT_ADDRESS ((void *)HANDLER_CONTEXT->cr2)
#endif
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
#define EFL_sig(context) ((context)->sc_efl)
/* FreeBSD, see i386/i386/traps.c::trap_pfault va->err kludge */
#define FAULT_ADDRESS ((void *)HANDLER_CONTEXT->sc_err)
@@ -1366,7 +1366,7 @@ static int set_handler( int sig, int hav
sigaddset( &sig_act.sa_mask, SIGUSR1 );
sigaddset( &sig_act.sa_mask, SIGUSR2 );
-#if defined(linux) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+#if defined(linux) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__)
sig_act.sa_flags = SA_RESTART;
#elif defined (__svr4__) || defined(_SCO_DS) || defined(__APPLE__)
sig_act.sa_flags = SA_SIGINFO | SA_RESTART;
diff --git a/dlls/winsock/socket.c b/dlls/winsock/socket.c
index 6df1c4d..ea730b8 100644
--- a/dlls/winsock/socket.c
+++ b/dlls/winsock/socket.c
@@ -144,7 +144,7 @@
#endif
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
# define sipx_network sipx_addr.x_net
# define sipx_node sipx_addr.x_host.c_host
#endif /* __FreeBSD__ */
diff --git a/libs/wine/ldt.c b/libs/wine/ldt.c
index ab277e1..6038c6f 100644
--- a/libs/wine/ldt.c
+++ b/libs/wine/ldt.c
@@ -109,7 +109,7 @@ static inline int set_thread_area( struc
#endif
#endif
-#if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__)
#include <machine/segments.h>
extern int i386_get_ldt(int, union descriptor *, int);
@@ -203,7 +203,7 @@ static int internal_set_entry( unsigned
if ((ret = modify_ldt(0x11, &ldt_info, sizeof(ldt_info))) < 0)
perror( "modify_ldt" );
}
-#elif defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+#elif defined(__NetBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__)
{
LDT_ENTRY entry_copy = *entry;
/* The kernel will only let us set LDTs with user priority level */
diff --git a/libs/wine/mmap.c b/libs/wine/mmap.c
index 2e16073..3d25f26 100644
--- a/libs/wine/mmap.c
+++ b/libs/wine/mmap.c
@@ -199,7 +199,7 @@ void *wine_anon_mmap( void *start, size_
if (!(flags & MAP_FIXED))
{
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
/* Even FreeBSD 5.3 does not properly support NULL here. */
if( start == NULL ) start = (void *)0x110000;
#endif
@@ -283,7 +283,7 @@ void mmap_init(void)
{
struct reserved_area *area;
struct list *ptr;
-#if defined(__i386__) && !defined(__FreeBSD__) /* commented out until FreeBSD gets fixed */
+#if defined(__i386__) && !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) /* commented out until FreeBSD gets fixed */
char stack;
char * const stack_ptr = &stack;
char *user_space_limit = (char *)0x80000000;
diff --git a/server/context_i386.c b/server/context_i386.c
index 7f1bb44..52b33aa 100644
--- a/server/context_i386.c
+++ b/server/context_i386.c
@@ -340,7 +340,7 @@ static void set_thread_context_ptrace( s
file_set_error();
}
-#elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
+#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__) || defined(__NetBSD__)
#include <machine/reg.h>
/* retrieve a thread context */
More information about the wine-cvs
mailing list