On Thursday 17 March 2005 03:32, Naveen Nathan wrote:
> > the patches change cofigure.in, so you need to run autoconf before 
> > running confgure.
> 
> I ran autoconf after applying the patch, and compiled libaal.
> I'm still receiving for both libaal & reiser4utils:
> 
> checking for _FILE_OFFSET_BITS value needed for large files... no
> checking for _LARGE_FILES value needed for large files... no
> 
> I've included a log for just for libaal.

would you apply this patch instead of the previous one to libaal.

-- 
Thanks,
Vitaly Fertman
===== configure.in 1.52 vs edited =====
--- 1.52/configure.in	2005-02-20 13:12:30 +03:00
+++ edited/configure.in	2005-03-14 17:20:41 +03:00
@@ -137,9 +136,12 @@ GENERIC_CFLAGS=""
 GENERIC_CFLAGS="$GENERIC_CFLAGS -D_REENTRANT"
 
 AC_SYS_LARGEFILE
-if test x${ac_cv_sys_file_offset_bits} != x; then
-	GENERIC_CFLAGS="$GENERIC_CFLAGS -D_FILE_OFFSET_BITS=${ac_cv_sys_file_offset_bits}"
+if test -z "${ac_cv_sys_file_offset_bits}"; then
+	AC_MSG_WARN(Can't detect right _FILE_OFFSET_BITS. Will be forced to 64bit.)
+	ac_cv_sys_file_offset_bits=64
 fi
+
+GENERIC_CFLAGS="$GENERIC_CFLAGS -D_FILE_OFFSET_BITS=${ac_cv_sys_file_offset_bits}"
 
 AC_CHECK_SIZEOF(off_t, 64, [
 	#include <stdio.h>
===== src/file.c 1.16 vs edited =====
--- 1.16/src/file.c	2004-09-22 17:46:59 +04:00
+++ edited/src/file.c	2005-03-17 15:44:53 +03:00
@@ -209,18 +209,8 @@ static count_t file_len(
 		return INVAL_BLK;
     
 #ifdef BLKGETSIZE64
-	if ((int)ioctl(*((int *)device->entity), BLKGETSIZE64, &size) >= (int)0) {
-		uint32_t block_count;
-		
-		size = (size / 4096) * 4096 / device->blksize;
-		block_count = size;
-		
-		if ((uint64_t)block_count != size) {
-			aal_fatal("The partition size is too big.");
-			return INVAL_BLK;
-		}
-		
-		return (count_t)block_count;
+	if (ioctl(*((int *)device->entity), BLKGETSIZE64, &size) >= 0) {
+		return size / device->blksize;
 	}
     
 #endif
@@ -231,8 +221,7 @@ static count_t file_len(
 		
 		if (ioctl(*((int *)device->entity), BLKGETSIZE, &l_size) >= 0) {
 			size = l_size;
-			return (count_t)((size * 512 / 4096) * 4096 / 
-				device->blksize);
+			return size * 512 / device->blksize;
 		}
 	}
     

Reply via email to