[haiku-development] Compiling Haiku for ARM

  • From: Hike Danakian <hdana2@xxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Tue, 12 Oct 2010 04:48:53 -0700

Hi,
I'm trying to compile Haiku for ARM, but I'm getting some errors
related to generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc
.
Compiling with "HAIKU_BOOT_BOARD=beagle jam -j2 -q haiku-image",
here's a sample of the errors:
---
C++ generated/objects/haiku/arm/release/system/libroot/os/recursive_lock.o
MkDir1 generated/objects/haiku/arm/common/system/libroot
MkDir1 generated/objects/haiku/arm/common/system/libroot/os
GenSyscallsFile1
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc
As generated/objects/haiku/arm/release/system/libroot/os/syscalls.o
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:
Assembler messages:
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:1:
Error: bad instruction `syscall0(_kern_is_computer_on, 0)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:2:
Error: bad instruction `syscall4(_kern_generic_syscall, 1)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:3:
Error: bad instruction `syscall2(_kern_getrlimit, 2)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:4:
Error: bad instruction `syscall2(_kern_setrlimit, 3)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:5:
Error: bad instruction `syscall1(_kern_shutdown, 4)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:6:
Error: bad instruction `syscall3(_kern_get_safemode_option, 5)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:7:
Error: bad instruction `syscall5(_kern_wait_for_objects, 6)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:8:
Error: bad instruction `syscall5(_kern_mutex_lock, 7)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:9:
Error: bad instruction `syscall2(_kern_mutex_unlock, 8)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:10:
Error: bad instruction `syscall6(_kern_mutex_switch_lock, 9)'
<snip>
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:246:
Error: bad instruction `syscall2(_kern_defragment_partition, 245)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:247:
Error: bad instruction `syscall3(_kern_repair_partition, 246)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:248:
Error: bad instruction `syscall8(_kern_resize_partition, 247)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:249:
Error: bad instruction `syscall9(_kern_move_partition, 248)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:250:
Error: bad instruction `syscall5(_kern_set_partition_name, 249)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:251:
Error: bad instruction `syscall3(_kern_set_partition_content_name,
250)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:252:
Error: bad instruction `syscall5(_kern_set_partition_type, 251)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:253:
Error: bad instruction `syscall5(_kern_set_partition_parameters, 252)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:254:
Error: bad instruction
`syscall3(_kern_set_partition_content_parameters, 253)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:255:
Error: bad instruction `syscall5(_kern_initialize_partition, 254)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:256:
Error: bad instruction `syscall2(_kern_uninitialize_partition, 255)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:257:
Error: bad instruction `syscall11(_kern_create_child_partition, 256)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:258:
Error: bad instruction `syscall4(_kern_delete_child_partition, 257)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:259:
Error: bad instruction `syscall3(_kern_start_watching_disks, 258)'
generated/objects/haiku/arm/common/system/libroot/os/syscalls.S.inc:260:
Error: bad instruction `syscall2(_kern_stop_watching_disks, 259)'

        
/home/hdanak/develop/haiku/trunk/generated/cross-tools/bin/arm-unknown-haiku-gcc
-c "src/system/libroot/os/syscalls.S" -O2  -D_ASSEMBLER -D__HAIKU__
-DHAIKU_DISTRO_COMPATIBILITY_DEFAULT -D__ARM__ -DARCH_arm
-DBOOT_ARCHIVE_IMAGE_OFFSET=192 -DHAIKU_INCLUDE_PATENTED_CODE=0
-DHAIKU_TARGET_PLATFORM_HAIKU -iquote build/user_config_headers
-iquote build/config_headers -iquote src/system/libroot/os -iquote
generated/objects/common/system/libroot/os -iquote
generated/objects/linux/x86/common/system/libroot/os -iquote
generated/objects/haiku/arm/common/system/libroot/os -iquote
src/system/libroot/os/locks -I headers/private/. -I
headers/private/system -I headers/private/system/arch/arm -I
headers/private/kernel -I headers/private/libroot -I
headers/private/runtime_loader -I headers/private/shared -I
/home/hdanak/develop/haiku/trunk/generated/cross-tools/lib/gcc/arm-unknown-haiku/4.4.4/../../../../arm-unknown-haiku/include/c++/4.4.4
-I 
/home/hdanak/develop/haiku/trunk/generated/cross-tools/lib/gcc/arm-unknown-haiku/4.4.4/../../../../arm-unknown-haiku/include/c++/4.4.4/arm-unknown-haiku
-I 
/home/hdanak/develop/haiku/trunk/generated/cross-tools/lib/gcc/arm-unknown-haiku/4.4.4/../../../../arm-unknown-haiku/include/c++/4.4.4/backward
-I 
/home/hdanak/develop/haiku/trunk/generated/cross-tools/lib/gcc/arm-unknown-haiku/4.4.4/../../../../arm-unknown-haiku/include/c++/4.4.4/ext
-I 
/home/hdanak/develop/haiku/trunk/generated/cross-tools/lib/gcc/arm-unknown-haiku/4.4.4/include
-I 
/home/hdanak/develop/haiku/trunk/generated/cross-tools/lib/gcc/arm-unknown-haiku/4.4.4/include-fixed
-I headers -I headers/posix -I headers/glibc -I headers/os -I
headers/os/add-ons -I headers/os/add-ons/file_system -I
headers/os/add-ons/graphics -I headers/os/add-ons/input_server -I
headers/os/add-ons/registrar -I headers/os/add-ons/screen_saver -I
headers/os/add-ons/tracker -I headers/os/app -I headers/os/device -I
headers/os/drivers -I headers/os/game -I headers/os/interface -I
headers/os/kernel -I headers/os/locale -I headers/os/media -I
headers/os/mail -I headers/os/midi -I headers/os/midi2 -I
headers/os/net -I headers/os/opengl -I headers/os/storage -I
headers/os/support -I headers/os/translation -I headers/private/. -o
"generated/objects/haiku/arm/release/system/libroot/os/syscalls.o" ;

...failed As generated/objects/haiku/arm/release/system/libroot/os/syscalls.o
...
In file included from headers/posix/signal.h:252,
                 from headers/private/system/syscalls.h:14,
                 from src/system/libroot/os/sem.c:8:
headers/posix/arch/arm/signal.h:32:2: warning: #warning ARM: fix
floats in vregs, add missing stuff.
...skipped libruntime_loader.a for lack of libruntime_loader.a(syscalls.o)...
...skipped runtime_loader for lack of libruntime_loader.a...
...skipped <HaikuImage>haiku.image-copy-files-dummy-system for lack of
runtime_loader...
...skipped haiku.image for lack of <HaikuImage>haiku.image-init-vars...
...failed updating 1 target(s)...
...skipped 5 target(s)...
...updated 969 target(s)...
---

However, compiling without the -q doesn't seem to produce this error,
which is odd. I can't seem to find SYSCALL{1,2,3..} macros either, nor
the GenSyscallsFile1 jam rule.
Any ideas on what could be wrong?

Thanks,
-- Hike Danakian

Other related posts: