libext2fs

From WiiBrew
Jump to navigation Jump to search

libext2fs
Libext2fs.jpg
General
Author(s)Numerous Developers
Maintainer(s)Dimok
TypePorted Libraries
Versionv1.0.5
LicenceGNU GPL v2
Links
Download
Source

libext2fs-wii is a port of the libext2fs driver to the Nintendo GameCube/Wii, modeled on the libntfs interface.

Features

  • EXT2/EXT3/EXT4 file systems support
  • Full read/write, files of any size can be created, modified, renamed, moved, or deleted.
  • Compression, read/write support for compressed files
  • Symbolic link and directory junction walking
  • Journaling system

Getting the latest sources

To grab the latest and greatest copy of the sources just type:

svn checkout svn://svn.code.sf.net/p/libext2fs-wii/code/trunk libext2fs-wii

Compiling and Installing

Make sure you have devkitPPC and the latest libogc installed. Then from the sources root directory, type:

make
make install      # or 'sudo make install' if you aren't root.

To compile a debug version with a console print out of the debug information, type:

make debug        # or 'sudo make debug' if you aren't root.

Usage

Related routines can be accessed by adding the following line to your source file(s).

#include <ext2.h>

When compiling you must also link against libext2fs. To do this, add -lext2fs to the LIBS section of your application Makefile; for example:

LIBS := -lwiiuse -lbte -lext2fs -lfat -logc -lm

For a more practical example of using libext2fs in your application, see it's implementation in WiiXplorer.

Changelog

v1.0.5 July 8, 2012

  • some corrections in setting errno (issue 4)
  • fix follow symlink when creating file/folder and checking for existing ones
  • fix possible mutex deadlock when creating a file in a path that already exists
  • sync with official release of E2fsprogs 1.42.4
  • See here for official e2fsprogs changelog: http://e2fsprogs.sourceforge.net/e2fsprogs-release.html

v1.0.4 December 10, 2011

v1.0.3 November 05, 2011

  • Sync with git snapshot 2011-10-17 / ext2fs 1.42-WIP-1016
  • Fixed symlink follow
  • Added support for drives with greater than 512 bytes per sector
  • Some speed up in read/write

v1.0.2 June 06, 2011

  • Sync with git snapshot 2011-05-15

v1.0.1 November 27, 2010

  • Bug fixes in the debug building
  • Fix for opening drives with size > 4gb
  • Write of uid and gid of parent directy to created child nodes
  • Changed creation mode from 0777 to 0755
  • Added symlink creation possibility
  • Speed up mount process by removing read of bitmaps on mount. Bitmaps are read on first attempt to delete/write to the disc.

v1.0.0 November 25, 2010

  • Initial release

Credits

A big thanks to all the authors of libext2fs, of which this library makes use of. Thanks also to the following:

  • Authors of libogc for providing the libraries framework
  • Authors of libntfs for laying the foundations