Package: libowfat
Version: 0.22-1
Severity: normal
Tags: patch

Hello,

with the lastest version of gcc-4.0 on amd64,
I get the following error when trying to build 'libowfat':

diet -v -Os gcc -c str/str_diffn.c -pipe -Wall -O2 -fomit-frame-pointer -I.
gcc -include /usr/lib/diet/include/dietref.h -c str/str_diffn.c -pipe -Wall -I. 
-isystem /usr/lib/diet/include -D__dietlibc__ -Os -fno-omit-frame-pointer 
diet -v -Os gcc -c str/str_len.c -pipe -Wall -O2 -fomit-frame-pointer -I.
gcc -include /usr/lib/diet/include/dietref.h -c str/str_len.c -pipe -Wall -I. 
-isystem /usr/lib/diet/include -D__dietlibc__ -Os -fno-omit-frame-pointer 
str/str_len.c:5: error: 'str_len' aliased to undefined symbol 'strlen'
make[1]: *** [str_len.o] Error 1
make[1]: Leaving directory `/libowfat-0.22'
make: *** [build-stamp] Error 2

With the attached patch 'libowfat' can be compiled
on amd64 using gcc-4.0.

I am not sure what is going on here, but apparently the latest gcc-4.0
does not like the 'alias' declaration anymore.

Regards
Andreas Jochens

diff -urN ../tmp-orig/libowfat-0.22/str/str_len.c ./str/str_len.c
--- ../tmp-orig/libowfat-0.22/str/str_len.c     2003-11-25 11:58:18.000000000 
+0100
+++ ./str/str_len.c     2005-04-05 09:10:16.995829942 +0200
@@ -1,9 +1,5 @@
 #include "str.h"
 
-#ifdef __dietlibc__
-#undef str_len
-unsigned long str_len(const char* in) __attribute__((alias("strlen")));
-#else
 unsigned long str_len(const char* in) {
   register const char* t=in;
   for (;;) {
@@ -14,4 +10,3 @@
   }
   return t-in;
 }
-#endif


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to