tag 194631 patch thanks Here is a patch to fix the build problem of busybox-cvs on the busybox-side. It includes the same code for powerpc, that was already there for ia64 and some new ifdefs for powerpc. Not sure about this, but perhaps other archs will need this too.
Plase can somebody with more c system programmming knowledge look at the patch and eventually send it to the upstream maintainer.
--- libbb/syscalls.c.orig 2003-05-27 13:49:08.000000000 +0200 +++ libbb/syscalls.c 2003-05-27 12:39:10.000000000 +0200 @@ -34,7 +34,7 @@ #endif #include "libbb.h" -#if defined(__ia64__) +#if (defined(__ia64__) || defined(__powerpc__)) int sysfs( int option, unsigned int fs_index, char * buf) { return(syscall(__NR_sysfs, option, fs_index, buf)); @@ -59,7 +59,7 @@ return -1; } #else -# if defined(__ia64__) +# if (defined(__ia64__) || defined(__powerpc__)) int pivot_root(const char * new_root,const char * put_old) { return(syscall(__NR_pivot_root, new_root, put_old)); --- util-linux/fdisk.c.orig 2003-05-27 13:47:41.000000000 +0200 +++ util-linux/fdisk.c 2003-05-27 13:04:11.000000000 +0200 @@ -865,10 +865,21 @@ #ifdef __NR__llseek +#if defined(__powerpc__) +static int _llseek (unsigned int f_d, unsigned long offset_high, + unsigned long offset_low, ext2_loff_t * result, + unsigned int origin) { + + return(syscall(__NR__llseek, f_d, offset_high, offset_low, result, origin)); +} + +#else static _syscall5(int,_llseek,unsigned int,f_d,unsigned long,offset_high, unsigned long, offset_low,ext2_loff_t *,result, unsigned int, origin) +#endif + #else /* no __NR__llseek on compilation machine - might give it explicitly */ --- libpwdgrp/setgroups.c.orig 2003-05-27 13:48:10.000000000 +0200 +++ libpwdgrp/setgroups.c 2003-05-27 13:13:29.000000000 +0200 @@ -38,5 +38,10 @@ #include "grp_.h" //#define __NR_setgroups 81 +#if defined(__powerpc__) +int setgroups(size_t size, const gid_t * list) { + return(syscall(__NR_setgroups, size, list)); +} +#else _syscall2(int, setgroups, size_t, size, const gid_t *, list); - +#endif