14f9a1459Swiz------------------------------------------------------------------ 24f9a1459SwizThis file is part of bzip2/libbzip2, a program and library for 34f9a1459Swizlossless, block-sorting data compression. 44f9a1459Swiz 5*c12ab3f1Smayabzip2/libbzip2 version 1.0.8 of 13 July 2019 6*c12ab3f1SmayaCopyright (C) 1996-2019 Julian Seward <jseward@acm.org> 74f9a1459Swiz 84f9a1459SwizPlease read the WARNING, DISCLAIMER and PATENTS sections in the 94f9a1459SwizREADME file. 104f9a1459Swiz 114f9a1459SwizThis program is released under the terms of the license contained 124f9a1459Swizin the file LICENSE. 134f9a1459Swiz------------------------------------------------------------------ 144f9a1459Swiz 15*c12ab3f1Smayabzip2 should compile without problems on the vast majority of 164f9a1459Swizplatforms. Using the supplied Makefile, I've built and tested it 174f9a1459Swizmyself for x86-linux and amd64-linux. With makefile.msc, Visual C++ 184f9a1459Swiz6.0 and nmake, you can build a native Win32 version too. Large file 194f9a1459Swizsupport seems to work correctly on at least on amd64-linux. 204f9a1459Swiz 214f9a1459SwizWhen I say "large file" I mean a file of size 2,147,483,648 (2^31) 224f9a1459Swizbytes or above. Many older OSs can't handle files above this size, 234f9a1459Swizbut many newer ones can. Large files are pretty huge -- most files 244f9a1459Swizyou'll encounter are not Large Files. 254f9a1459Swiz 264f9a1459SwizEarly versions of bzip2 (0.1, 0.9.0, 0.9.5) compiled on a wide variety 274f9a1459Swizof platforms without difficulty, and I hope this version will continue 284f9a1459Swizin that tradition. However, in order to support large files, I've had 294f9a1459Swizto include the define -D_FILE_OFFSET_BITS=64 in the Makefile. This 304f9a1459Swizcan cause problems. 314f9a1459Swiz 324f9a1459SwizThe technique of adding -D_FILE_OFFSET_BITS=64 to get large file 334f9a1459Swizsupport is, as far as I know, the Recommended Way to get correct large 344f9a1459Swizfile support. For more details, see the Large File Support 354f9a1459SwizSpecification, published by the Large File Summit, at 364f9a1459Swiz 374f9a1459Swiz http://ftp.sas.com/standards/large.file 384f9a1459Swiz 394f9a1459SwizAs a general comment, if you get compilation errors which you think 404f9a1459Swizare related to large file support, try removing the above define from 414f9a1459Swizthe Makefile, ie, delete the line 424f9a1459Swiz 434f9a1459Swiz BIGFILES=-D_FILE_OFFSET_BITS=64 444f9a1459Swiz 454f9a1459Swizfrom the Makefile, and do 'make clean ; make'. This will give you a 464f9a1459Swizversion of bzip2 without large file support, which, for most 474f9a1459Swizapplications, is probably not a problem. 484f9a1459Swiz 494f9a1459SwizAlternatively, try some of the platform-specific hints listed below. 504f9a1459Swiz 514f9a1459SwizYou can use the spewG.c program to generate huge files to test bzip2's 524f9a1459Swizlarge file support, if you are feeling paranoid. Be aware though that 534f9a1459Swizany compilation problems which affect bzip2 will also affect spewG.c, 544f9a1459Swizalas. 554f9a1459Swiz 564f9a1459SwizAIX: I have reports that for large file support, you need to specify 574f9a1459Swiz-D_LARGE_FILES rather than -D_FILE_OFFSET_BITS=64. I have not tested 584f9a1459Swizthis myself. 59