[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FDclone-users:00293] FDclone 2.05e on Vine Linux 2.6/ppc
- Subject: [FDclone-users:00293] FDclone 2.05e on Vine Linux 2.6/ppc
- From: KOJIMA Hajime / 小島肇 <kjm@rins.ryukoku.ac.jp>
- Date: Tue, 22 Jun 2004 20:41:26 +0900
Vine Linux 2.6/ppc な機械で FDclone 2.05e を make すると、こうな
ります:
cc -DFD=2 -DLINUX=1 -O -D_FILE_OFFSET_BITS=64 -c -o dosdisk.o dosdisk.c
dosdisk.c: In function `_llseek':
dosdisk.c:1038: more than 10 operands in `asm'
make[1]: *** [dosdisk.o] エラー 1
どうやら、dosdisk.c の
---- cut here ----
#ifdef USELLSEEK
static _syscall5(int, _llseek,
unsigned int, fd,
unsigned long, ofs_h,
unsigned long, ofs_l,
l_off_t *, result,
unsigned int, whence);
---- cut here ----
が
---- cut here ----
static int _llseek (
unsigned int fd ,
unsigned long ofs_h ,
unsigned long ofs_l ,
l_off_t * result ,
unsigned int whence ) { unsigned long __sc_ret, __sc_err; { register unsigned long __sc_0 __asm__ ("r0"); register unsigned long __sc_3 __asm__ ("r3"); register unsigned long __sc_4 __asm__ ("r4"); register unsigned long __sc_5 __asm__ ("r5"); register unsigned long __sc_6 __asm__ ("r6"); register unsigned long __sc_7 __asm__ ("r7"); __sc_0 = 140 ; __sc_3 = (unsigned long) ( fd ) ; __sc_4 = (unsigned long) ( ofs_h ) ; __sc_5 = (unsigned long) ( ofs_l ) ; __sc_6 = (unsigned long) ( result ) ; __sc_7 = (unsigned long) ( whence ) ; __asm__ __volatile__ ("sc \n\t" "mfcr %0 " : "=&r" (__sc_0), "=&r" (__sc_3), "=&r" (__sc_4), "=&r" (__sc_5), "=&r" (__sc_6), "=&r" (__sc_7) : "0" (__sc_0) , "1" (__sc_3) , "2" (__sc_4) , "3" (__sc_5) , "4" (__sc_6) , "5" (__sc_7) : "cr0", "ctr", "memory", "r8", "r9", "r10","r11", "r12"); __sc_ret = __sc_3; __sc_err = __sc_0; } if (__sc_err & 0x10000000) { (*__e!
rrno_location ()) = __sc_ret; __sc_ret = -1; } return ( int ) __sc_ret ; } ;
---- cut here ----
に展開され、
dosdisk.c:1038: more than 10 operands in `asm'
になっているようです。
とりあえず、USELLSEEK を定義しないようにして逃げてみています。
diff -u FD-2.05e.org/machine.h FD-2.05e/machine.h
--- FD-2.05e.org/machine.h 2004-06-09 00:00:00.000000000 +0900
+++ FD-2.05e/machine.h 2004-06-22 18:43:11.000000000 +0900
@@ -506,6 +512,7 @@
&& !defined (ia64) && !defined (__ia64) && !defined (__ia64__) \
&& !defined (x86_64) && !defined (__x86_64) && !defined (__x86_64__) \
&& !defined (s390x) && !defined (__s390x) && !defined (__s390x__) \
+&& !defined (PPC) \
&& !defined (CONFIG_ARCH_S390X)
# define USELLSEEK
# endif
----
// 毎月第 2 火曜日 (米国時間) は Windows Update の日
// http://windowsupdate.microsoft.com
小島 肇 - KOJIMA Hajime
[Office] kjm@rins.ryukoku.ac.jp, http://www.st.ryukoku.ac.jp/~kjm/