Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 3.0.1
-
Fix Version/s: 1000
-
Labels:None
-
Environment:OS X 10.5.4 (Leopard) @ PowerBook G4 (PPC)
Description
Trying to build Jikes (SVN revision 14944) fails on OS X 10.5.4 (Leopard) PPC as pasted below.
The attached patch solves these issues on my system, but have been untested so far on OS X 10.4 (Tiger) because I no longer own such a system. I tried to be careful not to break stuff.
Short summary on the issues this patch takes care of:
- adjusted external definition of sigaltstack
- use of DARWIN_PREFIX at appropriate places, which adds a "__" before struct elements where needed
- avoid redefinition of NULL
- use _STRUCT_UCONTEXT instead of struct ucontext (same for struct mcontext)
- remove sigreturn calls, since the sigreturn system call is no longer there on OS X
Build error messages:
build-bootloader:
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:310:1: warning: "NULL" redefined
[exec] In file included from /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:33:
[exec] /usr/include/stdio.h:84:1: warning: this is the location of the previous definition
[exec] /usr/include/signal.h:89: error: declaration of C function 'int sigaltstack(const stack_t*, stack_t*)' conflicts with
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:49: error: previous declaration 'int sigaltstack(const sigaltstack*, sigaltstack*)' here
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c: In function 'uint32_t* getRegAddress(ppc_thread_state_t*, int)':
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:201: error: 'struct __darwin_ppc_thread_state' has no member named 'r0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:204: error: 'struct __darwin_ppc_thread_state' has no member named 'r1'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:207: error: 'struct __darwin_ppc_thread_state' has no member named 'r2'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:210: error: 'struct __darwin_ppc_thread_state' has no member named 'r3'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:213: error: 'struct __darwin_ppc_thread_state' has no member named 'r4'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:216: error: 'struct __darwin_ppc_thread_state' has no member named 'r5'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:219: error: 'struct __darwin_ppc_thread_state' has no member named 'r6'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:222: error: 'struct __darwin_ppc_thread_state' has no member named 'r7'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:225: error: 'struct __darwin_ppc_thread_state' has no member named 'r8'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:228: error: 'struct __darwin_ppc_thread_state' has no member named 'r9'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:231: error: 'struct __darwin_ppc_thread_state' has no member named 'r10'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:234: error: 'struct __darwin_ppc_thread_state' has no member named 'r11'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:237: error: 'struct __darwin_ppc_thread_state' has no member named 'r12'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:240: error: 'struct __darwin_ppc_thread_state' has no member named 'r13'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:243: error: 'struct __darwin_ppc_thread_state' has no member named 'r14'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:246: error: 'struct __darwin_ppc_thread_state' has no member named 'r15'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:249: error: 'struct __darwin_ppc_thread_state' has no member named 'r16'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:252: error: 'struct __darwin_ppc_thread_state' has no member named 'r17'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:255: error: 'struct __darwin_ppc_thread_state' has no member named 'r18'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:258: error: 'struct __darwin_ppc_thread_state' has no member named 'r19'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:261: error: 'struct __darwin_ppc_thread_state' has no member named 'r20'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:264: error: 'struct __darwin_ppc_thread_state' has no member named 'r21'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:267: error: 'struct __darwin_ppc_thread_state' has no member named 'r22'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:270: error: 'struct __darwin_ppc_thread_state' has no member named 'r23'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:273: error: 'struct __darwin_ppc_thread_state' has no member named 'r24'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:276: error: 'struct __darwin_ppc_thread_state' has no member named 'r25'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:279: error: 'struct __darwin_ppc_thread_state' has no member named 'r26'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:282: error: 'struct __darwin_ppc_thread_state' has no member named 'r27'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:285: error: 'struct __darwin_ppc_thread_state' has no member named 'r28'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:288: error: 'struct __darwin_ppc_thread_state' has no member named 'r29'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:291: error: 'struct __darwin_ppc_thread_state' has no member named 'r30'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:294: error: 'struct __darwin_ppc_thread_state' has no member named 'r31'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c: In function 'void cSignalHandler(int, siginfo_t*, ucontext*)':
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:458: error: invalid use of undefined type 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:456: error: forward declaration of 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:459: error: invalid use of undefined type 'struct mcontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:458: error: forward declaration of 'struct mcontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:460: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:467: error: 'sigreturn' was not declared in this scope
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:478: error: 'sigreturn' was not declared in this scope
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:501: error: 'sigreturn' was not declared in this scope
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:537: error: 'struct __darwin_ppc_thread_state' has no member named 'lr'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:537: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:538: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:546: error: 'sigreturn' was not declared in this scope
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:551: error: 'sigreturn' was not declared in this scope
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c: In function 'void cTrapHandler(int, siginfo_t*, ucontext*)':
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:634: error: invalid use of undefined type 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:456: error: forward declaration of 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:635: error: invalid use of undefined type 'struct mcontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:634: error: forward declaration of 'struct mcontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:636: error: invalid use of undefined type 'struct mcontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:634: error: forward declaration of 'struct mcontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:637: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:638: error: 'struct __darwin_ppc_thread_state' has no member named 'lr'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:642: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:643: error: invalid use of undefined type 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:456: error: forward declaration of 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:725: error: invalid use of undefined type 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:456: error: forward declaration of 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:776: error: 'struct __darwin_ppc_thread_state' has no member named 'lr'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:776: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:777: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:800: error: 'struct __darwin_ppc_float_state' has no member named 'fpregs'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:802: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:803: error: 'struct __darwin_ppc_thread_state' has no member named 'lr'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:826: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:848: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:850: error: invalid use of undefined type 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:456: error: forward declaration of 'struct ucontext'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:952: error: 'struct __darwin_ppc_thread_state' has no member named 'lr'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:952: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:953: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:997: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:1002: error: 'struct __darwin_ppc_thread_state' has no member named 'lr'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:1002: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:1021: error: 'struct __darwin_ppc_thread_state' has no member named 'lr'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:1030: error: 'struct __darwin_ppc_thread_state' has no member named 'srr0'
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:1036: error: 'sigreturn' was not declared in this scope
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c: In function 'int createVM(int)':
[exec] /Users/kehoste/work/tune_jit_cole/jikes/jikesrvm_unpatched/tools/bootImageRunner/ppc/libvm.c:1266: error: aggregate 'sigaltstack stackInfo' has incomplete type and cannot be defined
BUILD FAILED
Thanks Kenneth, I can try this on Tiger. Can you submit a contributors statement (copy and paste from jikesrvm.org and fill in the blanks). Any news on the Intel patch that should work now with -mstackrealign?