[physfs] PhysicsFS 1.1.1 development branch release...

Matthias Braun matze at braunis.de
Tue Apr 3 07:24:03 EDT 2007


Well I did a clean checkout of revision 906 from svn. The cmake build
failed for me (cmake-2.4-patch 3) on a pretty standard gentoo linux x86
installation. I don't know cmake yet so this is left for you to debug: 

[matze at taylor] ~/compiling/physfs > cmake .
-- Check for working C compiler: gcc
-- Check for working C compiler: gcc -- works
-- Check size of void*
-- Check size of void* - done
-- Check for working CXX compiler: c++
-- Check for working CXX compiler: c++ -- works
-- Performing Test PHYSFS_IS_GCC4
-- Performing Test PHYSFS_IS_GCC4 - Success
-- Looking for sys/ucred.h
-- Looking for sys/ucred.h - not found
-- Looking for mntent.h
-- Looking for mntent.h - found
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for assert.h
-- Looking for assert.h - found
-- Looking for zlib.h
-- Looking for zlib.h - found
-- Looking for inflate in z
-- Looking for inflate in z - found
-- Looking for readline/readline.h
-- Looking for readline/readline.h - not found
-- Looking for readline/history.h
-- Looking for readline/history.h - not found
-- Doxygen not found. You won't be able to build documentation.
-- PhysicsFS will build with the following options:
--   ZIP support: enabled
--   7zip support: enabled
--   GRP support: enabled
--   WAD support: enabled
--   HOG support: enabled
--   MVL support: enabled
--   QPAK support: enabled
--   CD-ROM drive support: enabled
--   Thread safety: enabled
--   Build own zlib: disabled
--   Build static library: enabled
--   Build shared library: enabled
--   Build wxWidgets test program: enabled
--   Build stdio test program: enabled
--     Use readline in test program: disabled
-- Configuring done
-- Generating done
-- Build files have been written to: /home/matze/compiling/physfs
[matze at taylor] ~/compiling/physfs > make
Scanning dependencies of target physfs
[  1%] Building C object CMakeFiles/physfs.dir/physfs.o
[  3%] Building C object CMakeFiles/physfs.dir/physfs_byteorder.o
[  5%] Building C object CMakeFiles/physfs.dir/physfs_unicode.o
[  7%] Building C object CMakeFiles/physfs.dir/platform/os2.o
[  8%] Building C object CMakeFiles/physfs.dir/platform/pocketpc.o
[ 10%] Building C object CMakeFiles/physfs.dir/platform/posix.o
[ 12%] Building C object CMakeFiles/physfs.dir/platform/unix.o
[ 14%] Building C object CMakeFiles/physfs.dir/platform/macosx.o
[ 16%] Building C object CMakeFiles/physfs.dir/platform/windows.o
[ 17%] Building C object CMakeFiles/physfs.dir/archivers/dir.o
[ 19%] Building C object CMakeFiles/physfs.dir/archivers/grp.o
[ 21%] Building C object CMakeFiles/physfs.dir/archivers/hog.o
[ 23%] Building C object CMakeFiles/physfs.dir/archivers/lzma.o
[ 25%] Building C object CMakeFiles/physfs.dir/archivers/mvl.o
[ 26%] Building C object CMakeFiles/physfs.dir/archivers/qpak.o
[ 28%] Building C object CMakeFiles/physfs.dir/archivers/wad.o
[ 30%] Building C object CMakeFiles/physfs.dir/archivers/zip.o
[ 32%] Building C object CMakeFiles/physfs.dir/lzma/7zBuffer.o
[ 33%] Building C object CMakeFiles/physfs.dir/lzma/7zCrc.o
[ 35%] Building C object CMakeFiles/physfs.dir/lzma/7zDecode.o
[ 37%] Building C object CMakeFiles/physfs.dir/lzma/7zExtract.o
[ 39%] Building C object CMakeFiles/physfs.dir/lzma/7zHeader.o
[ 41%] Building C object CMakeFiles/physfs.dir/lzma/7zIn.o
[ 42%] Building C object CMakeFiles/physfs.dir/lzma/7zItem.o
[ 44%] Building C object CMakeFiles/physfs.dir/lzma/7zMethodID.o
[ 46%] Building C object CMakeFiles/physfs.dir/lzma/LzmaDecode.o
[ 48%] Building C object CMakeFiles/physfs.dir/lzma/LzmaStateDecode.o
Linking C shared library libphysfs.so
[ 48%] Built target physfs
Scanning dependencies of target physfs-static
[ 50%] Building C object CMakeFiles/physfs-static.dir/physfs.o
[ 51%] Building C object CMakeFiles/physfs-static.dir/physfs_byteorder.o
[ 53%] Building C object CMakeFiles/physfs-static.dir/physfs_unicode.o
[ 55%] Building C object CMakeFiles/physfs-static.dir/platform/os2.o
[ 57%] Building C object
CMakeFiles/physfs-static.dir/platform/pocketpc.o
[ 58%] Building C object CMakeFiles/physfs-static.dir/platform/posix.o
[ 60%] Building C object CMakeFiles/physfs-static.dir/platform/unix.o
[ 62%] Building C object CMakeFiles/physfs-static.dir/platform/macosx.o
[ 64%] Building C object CMakeFiles/physfs-static.dir/platform/windows.o
[ 66%] Building C object CMakeFiles/physfs-static.dir/archivers/dir.o
[ 67%] Building C object CMakeFiles/physfs-static.dir/archivers/grp.o
[ 69%] Building C object CMakeFiles/physfs-static.dir/archivers/hog.o
[ 71%] Building C object CMakeFiles/physfs-static.dir/archivers/lzma.o
[ 73%] Building C object CMakeFiles/physfs-static.dir/archivers/mvl.o
[ 75%] Building C object CMakeFiles/physfs-static.dir/archivers/qpak.o
[ 76%] Building C object CMakeFiles/physfs-static.dir/archivers/wad.o
[ 78%] Building C object CMakeFiles/physfs-static.dir/archivers/zip.o
[ 80%] Building C object CMakeFiles/physfs-static.dir/lzma/7zBuffer.o
[ 82%] Building C object CMakeFiles/physfs-static.dir/lzma/7zCrc.o
[ 83%] Building C object CMakeFiles/physfs-static.dir/lzma/7zDecode.o
[ 85%] Building C object CMakeFiles/physfs-static.dir/lzma/7zExtract.o
[ 87%] Building C object CMakeFiles/physfs-static.dir/lzma/7zHeader.o
[ 89%] Building C object CMakeFiles/physfs-static.dir/lzma/7zIn.o
[ 91%] Building C object CMakeFiles/physfs-static.dir/lzma/7zItem.o
[ 92%] Building C object CMakeFiles/physfs-static.dir/lzma/7zMethodID.o
[ 94%] Building C object CMakeFiles/physfs-static.dir/lzma/LzmaDecode.o
[ 96%] Building C object
CMakeFiles/physfs-static.dir/lzma/LzmaStateDecode.o
Linking C static library libphysfs.a
[ 96%] Built target physfs-static
Scanning dependencies of target test_physfs
[ 98%] Building C object CMakeFiles/test_physfs.dir/test/test_physfs.o
make[2]: *** No rule to make target `libphysfs.so', needed by
`test_physfs'.  Stop.
make[1]: *** [CMakeFiles/test_physfs.dir/all] Error 2
make: *** [all] Error 2


Greetings,
	Matze

Am Dienstag, den 03.04.2007, 01:28 -0400 schrieb Ryan C. Gordon:
> So it's been a long time, but now that some of my long-term contracts 
> have finished up, I explicitly allocated time to work on a few of my 
> open source projects...top among these is PhysicsFS, which hasn't seen a 
> new release in quite some time, despite a pretty big TODO list.
> 
> Please note that the 1.1 branch is still a work in progress, and all new 
> features (and several old ones) are likely to be buggy at this time. 
> APIs from the stable branch will not change, but all APIs from 1.1 are 
> still subject to change, addition, and removal. Use with caution.
> 
>   Source code download:
>     http://icculus.org/physfs/downloads/physfs-1.1.1.tar.gz
> 
>   Grabbing development branch from Subversion:
>     svn co svn://svn.icculus.org/physfs/trunk physfs
> 
> 
> Notable changes in 1.1.1:
> 
> - New CMake-based build system. The autotools mess is gone, as are all 
> the specialized project files for various toolchains. We now maintain 
> one text file that describes the project, and use CMake 
> (http://www.cmake.org/) to generate real project files from there...it 
> produces standard Makefiles for most Unixes and BeOS, but also project 
> files for KDevelop, Xcode, Visual Studio 6/7/8, Watcom, Borland, and 
> other build tools on Windows and Mac OS X. If your platform or build 
> tool isn't supported, energy is better spent on enhancing CMake than 
> creating another project file for PhysicsFS. OS/2 still uses a batch 
> file to build for now, but everything else is either using CMake or will 
> be dropped.
> 
> - New archiver: lzma support (7zip archives), thanks to Dennis Schridde.
> 
> - Unicode support! All PhysicsFS APIs that deal with strings now expect 
> them to be UTF-8 encoded, and will convert behind the scenes as 
> appropriate, so eventually your UTF-8 encoded Japanese characters will 
> become 2-byte WCHAR strings when looking for filenames on a Windows NTFS 
> disc, etc. Windows will try to use the appropriate codepage on 
> Win95/98/ME, and use the actual Unicode entry points on NT/XP/Vista, 
> CFStrings on Mac OS X, etc. The platform layers in PhysicsFS for all 
> supported OSes are now Unicode clean, except OS/2 (to be considered). 
> There are new PhysicsFS APIs to provide conversion between some common 
> character encodings.
> 
> - New API: PHYSFS_isInit(), to determine if the library is ready for use 
> when you don't have access to the results of a previous PHYSFS_init() call.
> 
> - New API: PHYSFS_symbolicLinksPermitted(), to determine this state when 
> you don't control the calls to PHYSFS_permitSymbolicLinks().
> 
> - Symlinks are now supported on Windows Vista: PHYSFS_isSymbolicLink() 
> and PHYSFS_permitSymbolicLinks() work with the native filesystem as 
> expected in the new Windows version without losing binary compatibility 
> with older Windows releases.
> 
> - Public headers no longer use size_t, so they work without any system 
> headers pre-included.
> 
> - Internal mutexes are now recursive on all platforms, which means it's 
> now safe to call most PHYSFS_* functions from inside an enumeration 
> callback (including performing more enumerations from inside an 
> enumeration!)
> 
> - Added unarchiver program as an example application, which actually 
> does enumerations from inside enumerations.  :)
> 
> - Added initial shot at a wxWidgets-based test program, to supersede 
> test_physfs.c ... still a work in progress.
> 
> - Mac OS classic support has been dropped. It could be readded if CMake 
> is enhanced to support CodeWarrior or MPW, and the code moves from 
> FSSpec to FSRef functions for Unicode support. Mac OS 8/9 support will 
> remain in the stable 1.0 branch, and Mac OS X is still, of course, fully 
> supported everywhere.
> 
> - MIX archiver has been dropped. It couldn't supply filenames (just hash 
> strings that represent filenames), and it had a tendency to take all 
> files that weren't accepted by other archivers. The source can be 
> retrieved from Subversion if someone wants/needs it.
> 
> - Mac OS X now has its own Carbon-based code, split out from unix.c, 
> which helps with functionality like Unicode and recursive mutexes...the 
> bits in posix.c are still used on OS X, though.
> 
> - OS/2 now builds with Innotek GCC and klibc instead of EMX (although 
> can probably still work with EMX).
> 
> - Most systems can make do with PHYSFS_init(NULL) now (but still should 
> have argv[0] for cases where they can't!). This includes Linux and 
> systems that present a Linux-like /proc filesystem with /proc/self/exe ...
> 
> - Compiles on BeOS again (was broken in 1.1.0).
> 
> - Added documentation for new, previously-undocumented APIs from 1.1.0.
> 
> - On GCC 4 and later, will build with -fvisibility=hidden, so the only 
> symbols exported from the library are the public APIs. This makes the 
> library smaller and faster when built as a shared library, not to 
> mention prevents namespace pollution.
> 
> - Reduced malloc pressure a little more (see __PHYSFS_smallAlloc() in 
> physfs_internal.h). More to come.
> 
> - Other bug fixes, cleanups, refactoring, and improvements. A LOT of 
> internal code has changed...you can check the Subversion repository 
> history for specific details.
> 
> Please report bugs! There are still more development branch features to 
> add, but the process of stabilizing the codebase should start 
> immediately. If there are features you want/need, please do mention 
> them...some may be on the TODO list already, but other requests are very 
> welcome.
> 
> Enjoy,
> --ryan.
> 
> 




More information about the physfs mailing list