>        make 9vx/9vx

on 10.5.3 that fails with:

gcc -g -O3 -MD -std=gnu99 -I.  -I. -I9vx -I9vx/a -Wall
-Wno-missing-braces -c -o 9vx/main.o 9vx/main.c
9vx/main.c: In function 'sigsegv':
9vx/main.c:491: error: 'struct __darwin_mcontext32' has no member named 'es'
9vx/main.c:492: error: 'struct __darwin_mcontext32' has no member named 'ss'
9vx/main.c:493: error: 'struct __darwin_mcontext32' has no member named 'ss'
make: *** [9vx/main.o] Error 1

turns out that osx exposes __es and __ss for mcontext in
/usr/include/mach/i386/_structs.h. this fixes it:

gcc -D__DARWIN_UNIX03=0 -g -O3 -MD -std=gnu99 -I.  -I. -I9vx -I9vx/a
-Wall -Wno-missing-braces -c -o 9vx/main.o 9vx/main.c

a bit later on:

gcc -Ilibvx32 -c -g -O3 -MD -std=gnu99 -I.  -o libvx32/emu.o libvx32/emu.c
libvx32/emu.c: In function 'vxproc_run':
libvx32/emu.c:1796: error: storage size of 'env' isn't known
make: *** [libvx32/emu.o] Error 1

is fixed identically by:

gcc -D__DARWIN_UNIX03=0 -Ilibvx32 -c -g -O3 -MD -std=gnu99 -I.  -o
libvx32/emu.o libvx32/emu.c

and then later on we fail with:

gcc -g -O3 -MD -std=gnu99 -I.  -I. -I9vx -I9vx/a -Wall
-Wno-missing-braces -c -o 9vx/stub.o 9vx/stub.c
make: *** No rule to make target `libvx32/darwin-asm.o', needed by
`libvx32/libvx32.a'.  Stop.

and darwin-asm.S just seems to be missing everywhere. in fact, there
is no definition for vx32_getcontext:

$ find . -type f | xargs grep vx32_getcontext
./libvx32/emu.c:        if(vx32_getcontext(&env)){
Binary file ./libvx32/emu.o matches
./libvx32/vx32impl.h:int vx32_getcontext(struct i386_thread_state*);
$

Reply via email to