--- blender-2.44/tools/Blender.py.bug6811 2007-04-13 08:30:34.000000000 +0200 +++ blender-2.44/tools/Blender.py 2007-09-03 09:06:56.000000000 +0200 @@ -385,6 +385,8 @@ lenv = self.Copy() lenv.Append(CPPPATH=includes) lenv.Append(CPPDEFINES=defines) + if lenv['WITH_BF_LARGEFILE']: + lenv.Append(CPPDEFINES=Split(lenv['BF_LARGEFILE_FLAGS'])) if lenv['WITH_BF_GAMEENGINE']: lenv.Append(CPPDEFINES=['GAMEBLENDER=1']) # debug or not --- blender-2.44/tools/btools.py.bug6811 2007-06-19 16:21:48.000000000 +0200 +++ blender-2.44/tools/btools.py 2007-09-03 09:06:56.000000000 +0200 @@ -53,6 +53,7 @@ 'BF_PROFILE_FLAGS', 'LCGDIR', 'WITH_BF_VERSE', 'BF_VERSE_INCLUDE', 'VERSE_BUILD_BINARY', 'VERSE_BUILD_DIR', 'VERSE_REGEN_PROTO', + 'WITH_BF_LARGEFILE', 'BF_TWEAK_MODE' ] @@ -215,7 +216,10 @@ ('BF_BULLET', 'Bullet base dir', ''), ('BF_BULLET_INC', 'Bullet include path', ''), ('BF_BULLET_LIB', 'Bullet library', ''), - + + (BoolOption('WITH_BF_LARGEFILE', 'Use 64bit file offsets if true', 'true')), + ('BF_LARGEFILE_FLAGS', 'Flags for LARGEFILEs', ''), + ('BF_SOLID', 'Solid base dir', '#/extern/solid'), ('BF_SOLID_INC', 'Solid include path', ''), ('BF_WINTAB', 'WinTab base dir', ''), --- blender-2.44/config/linux2-config.py.bug6811 2007-09-03 09:06:56.000000000 +0200 +++ blender-2.44/config/linux2-config.py 2007-09-03 09:06:56.000000000 +0200 @@ -133,6 +133,10 @@ BF_OPENGL_LIBPATH = '/usr/X11R6/lib' BF_OPENGL_LIB_STATIC = '${BF_OPENGL}/libGL.a ${BF_OPENGL}/libGLU.a ${BF_OPENGL}/libXxf86vm.a ${BF_OPENGL}/libX11.a ${BF_OPENGL}/libXi.a ${BF_OPENGL}/libXext.a ${BF_OPENGL}/libXxf86vm.a' +# use -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE (64bit offsets, available even in 32bit platforms) +WITH_BF_LARGEFILE = 'true' +BF_LARGEFILE_FLAGS = '_FILE_OFFSET_BITS=64 _LARGEFILE_SOURCE' + ## CC = 'gcc' CXX = 'g++' --- blender-2.44/source/blender/blenlib/intern/storage.c.bug6811 2007-03-07 07:19:15.000000000 +0100 +++ blender-2.44/source/blender/blenlib/intern/storage.c 2007-09-03 11:03:18.000000000 +0200 @@ -326,11 +326,11 @@ char size[250]; static char * types[8] = {"---", "--x", "-w-", "-wx", "r--", "r-x", "rw-", "rwx"}; int num, mode; - int num1, num2, num3, num4; + off_t num1, num2, num3, num4, num5; #ifdef WIN32 __int64 st_size; #else - long long st_size; + off_t st_size; #endif struct direntry * file; @@ -392,7 +392,7 @@ * will buy us some time until files get bigger than 4GB or until * everyone starts using __USE_FILE_OFFSET64 or equivalent. */ - st_size= (unsigned int)files[num].s.st_size; + st_size= (off_t)files[num].s.st_size; num1= st_size % 1000; num2= st_size/1000; @@ -401,11 +401,15 @@ num3= num3 % 1000; num4= st_size/(1000*1000*1000); num4= num4 % 1000; + num5= st_size/(1000000000000LL); + num5= num5 % 1000; - if(num4) sprintf(files[num].size, "%3d %03d %03d %03d", num4, num3, num2, num1); - else if(num3) sprintf(files[num].size, "%7d %03d %03d", num3, num2, num1); - else if(num2) sprintf(files[num].size, "%11d %03d", num2, num1); - else if(num1) sprintf(files[num].size, "%15d", num1); + if(num5) + sprintf(files[num].size, "%1d %03d %03d %03d K", (int)num5, (int)num4, (int)num3, (int)num2); + else if(num4) sprintf(files[num].size, "%3d %03d %03d %03d", (int)num4, (int)num3, (int)num2, (int)num1); + else if(num3) sprintf(files[num].size, "%7d %03d %03d", (int)num3, (int)num2, (int)num1); + else if(num2) sprintf(files[num].size, "%11d %03d", (int)num2, (int)num1); + else if(num1) sprintf(files[num].size, "%15d", (int)num1); else sprintf(files[num].size, "0"); strftime(datum, 32, "%d-%b-%y %H:%M", tm); --- blender-2.44/extern/verse/dist/SConstruct.bug6811 2006-11-01 06:43:05.000000000 +0100 +++ blender-2.44/extern/verse/dist/SConstruct 2007-09-03 09:06:56.000000000 +0200 @@ -132,6 +132,7 @@ verselib_env = verse_env.Copy() verselib_env.Append(CPPDEFINES = defines) +verselib_env.Append(CPPDEFINES = Split(env['BF_LARGEFILE_FLAGS'])) verseserver_env = verse_env.Copy() verseserver_env.Append(CPPDEFINES = defines)