On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote:
> wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi
>
Not for me. Do you have patches? The dnsapi error is this one,
right?
cc -c -I. -I. -I../../include -I../../include -D__WINESRC__
-D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings
-Wpointer-arith -O2 -pipe -o name.o name.c
In file included from name.c:46:
dnsapi.h:143: error: syntax error before "ns_msg"
dnsapi.h:144: error: syntax error before '*' token
I could get this to compile by adding a LIB_DEPENDS on libbind
and adding CFLAGS=-I/usr/local/include/bind
But then I hit this error:
cc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_REENTRANT
-fPIC -
Wall -pipe -fno-strict-aliasing -Wwrite-strings -Wpointer-arith
-I/usr/local/incl
ude/bind -o ipstats.o ipstats.c
ipstats.c: In function `getNumRoutes':
ipstats.c:630: error: `RTF_MULTICAST' undeclared (first use in this function)
ipstats.c:630: error: (Each undeclared identifier is reported only once
ipstats.c:630: error: for each function it appears in.)
ipstats.c: In function `getRouteTable':
ipstats.c:704: error: `RTF_MULTICAST' undeclared (first use in this function)
Two places in this file he's looking at the routing table using
sysctl and wishes to leave out entries that are not gateways or
that are multicast. RTF_MULTICAST is defined in route.h in
freebsd and linux but not in OpenBSD. Looking at this paragraph
from the netstat man page, I though perhaps this wouldn't be an
issue for OpenBSD, maybe the multicast check could be left out,
maybe that's a separate table, but I'm uncertain:
" -g Show information related to multicast (group address) routing.
By default, show the IP multicast virtual-interface and routing
tables. If the -s option is also present, show multicast routing
statistics."
I left it out for myself and then hit this error...
cc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_NTSYSTEM_
-D_REENT
RANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings -Wpointer-arith
-I/us
r/local/include/bind -o cdrom.o cdrom.c
cdrom.c: In function `DVD_ReadStructure':
cdrom.c:1911: error: syntax error before "s"
cdrom.c:1919: error: `s' undeclared (first use in this function)
c
This was a case where Linux, NetBSD, etc. have a typedef for the
dvd_struct union in sys/cdio.h but OpenBSD has a regular union
definition.
Then I hit this...
cc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_NTSYSTEM_
-D_REENT
RANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings -Wpointer-arith
-I/us
r/local/include/bind -o signal_i386.o signal_i386.c
signal_i386.c:325: error: `T_MCHK' undeclared here (not in a function)
signal_i386.c:325: error: enumerator value for `TRAP_x86_MCHK' not integer
constan
t
signal_i386.c:349: error: `T_XMMFLT' undeclared here (not in a function)
signal_i386.c:349: error: enumerator value for `TRAP_x86_CACHEFLT' not integer
con
stant
signal_i386.c: In function `segv_handler':
signal_i386.c:1186: error: duplicate case value
signal_i386.c:1181: error: previously used here
Here, although there's an if defined including __OpenBSD__ at the top
of an enum, there are two definitions with slightly different names
in OpenBSD trap.h than they try to use.
I'm guessing there will be more stuff to come, but I was wondering
if you already worked through all these yourself to get it to compile.
I hope to get it to compile sometime this week, although I'm not sure
if I'll be able to help with threading issues. The archives mention
something about using vfork in a weird, linux specific way. Maybe
that would be something to look at?
If you look at .../libs/wine/mmap.c there are some troubling comments
above and within try_mmap_fixed, as well as an #if defined(__NetBSD__).
> Execution leads to segfault.
> (Note: Generic kernel _has_ SYSV MSG/SHM/SEM....and I
> have not forgot sysctl machdep.userldt=1)
>
> I know there are some issues about wine's use of
> kernel threads on OpenBSD. I am clueless about the
> true
> problem though. If possible, I would like
> some comments on the ktrace kdump.
>
> // V.A.
>
>
> 25268 ktrace RET ktrace 0
> 25268 ktrace CALL
...
> execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
> 25268 ktrace NAMI "/usr/local/bin/wine"
> 25268 wine NAMI "/usr/libexec/ld.so"
> 25268 wine EMUL "native"
> 25268 wine RET execve 0
> 25268 wine CALL issetugid()
> 25268 wine RET issetugid 0
> 25268 wine CALL mprotect(0x2a6d5000,0x1000,0x1)
> 25268 wine RET mprotect 0
> 25268 wine CALL
> mmap(0,0x1000,0x3,0x1002,0xffffffff,0,0,0)
> 25268 wine RET mmap -1 errno 12 Cannot allocate
> memory
> 25268 wine PSIG SIGSEGV SIG_DFL code 1
> addr=0xa6d7bec trapno=1
> 25268 wine NAMI "wine.core"
--
Mike Small
[EMAIL PROTECTED]