ext4_config: add defines allowing disabling xattr and extent modules
[lwext4.git] / README.md
index 4503635e798e7bdb62c9157bf966acc803ba0c61..86b09745693906d4607f9eb9ec7b4e2e68c3ca55 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,16 +1,21 @@
+[![Join the chat at https://gitter.im/gkostka/lwext4](https://badges.gitter.im/gkostka/lwext4.svg)](https://gitter.im/gkostka/lwext4?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+[![License (3-Clause BSD)](https://img.shields.io/badge/license-BSD%203--Clause-blue.svg?style=flat-square)](http://opensource.org/licenses/BSD-3-Clause)
 [![Build Status](https://travis-ci.org/gkostka/lwext4.svg)](https://travis-ci.org/gkostka/lwext4)
 [![Build Status](https://travis-ci.org/gkostka/lwext4.svg)](https://travis-ci.org/gkostka/lwext4)
+[![](http://img.shields.io/gratipay/user/gkostka.svg)](https://gratipay.com/gkostka/)
 
 ![lwext4](https://cloud.githubusercontent.com/assets/8606098/11697327/68306d88-9eb9-11e5-8807-81a2887f077e.png)
 
 About
 =====
 
 
 ![lwext4](https://cloud.githubusercontent.com/assets/8606098/11697327/68306d88-9eb9-11e5-8807-81a2887f077e.png)
 
 About
 =====
 
+
 The main goal of the lwext4 project is to provide ext2/3/4 filesystem for microcontrollers. It may be an interesting alternative for traditional MCU filesystem libraries (mostly based on FAT32). Library has some cool and unique features in microcontrollers world:
  - directory indexing - fast file find and list operations
  - extents - fast big file truncate
  - journaling transactions & recovery - power loss resistance
 
 The main goal of the lwext4 project is to provide ext2/3/4 filesystem for microcontrollers. It may be an interesting alternative for traditional MCU filesystem libraries (mostly based on FAT32). Library has some cool and unique features in microcontrollers world:
  - directory indexing - fast file find and list operations
  - extents - fast big file truncate
  - journaling transactions & recovery - power loss resistance
 
-Lwext4 is an excellent choice for SD/MMC card, USB flash drive or other block based memory device. However it is not good for flash memory–based storage devices.
+Lwext4 is an excellent choice for SD/MMC card, USB flash drive or any other wear
+leveled memory types. However it is not good for raw flash devices.
 
 Feel free to contact me:
 kostka.grzegorz@gmail.com
 
 Feel free to contact me:
 kostka.grzegorz@gmail.com
@@ -63,45 +68,20 @@ should not allocate more than CONFIG_BLOCK_DEV CACHE_SIZE.
 
 Supported ext2/3/4 features
 =====
 
 Supported ext2/3/4 features
 =====
-Features incompatible:
-------------
-*  compression: no
-*  filetype: yes
-*  recover: no
-*  journal_dev: no
-*  meta_bg: yes
-*  extents: yes
-*  64bit: yes
-*  mmp: no
-*  flex_bg: yes
-*  ea_inode: no
-*  dirdata: no
-*  bg_meta_csum: no
-*  largedir: no
-*  inline_data: no
-
-Features compatible:
+incompatible:
 ------------
 ------------
-*  dir_prealloc: no
-*  imagic_inodes: no
-*  has_journal: yes (in progress)
-*  ext_attr: yes
-*  resize_inode: no
-*  dir_index: yes
-
-Features read-only:
+*  filetype, recover, meta_bg, extents, 64bit, flex_bg: **yes**
+*  compression, journal_dev, mmp, ea_inode, dirdata, bg_meta_csum, largedir, inline_data: **no**
+
+compatible:
 ------------
 ------------
-*  sparse_super: yes
-*  large_file: yes
-*  btree_dir: yes
-*  huge_file: yes
-*  gdt_csum: yes
-*  dir_nlink: yes
-*  extra_isize: yes
-*  quota: no
-*  bigalloc: no
-*  metadata_csum: yes
+*  has_journal, ext_attr, dir_index: **yes**
+*  dir_prealloc, imagic_inodes, resize_inode: **no**
 
 
+read-only:
+------------
+*  sparse_super, large_file, huge_file, gdt_csum, dir_nlink, extra_isize, metadata_csum: **yes**
+*  quota, bigalloc, btree_dir: **no**
 
 Project tree
 =====
 
 Project tree
 =====
@@ -211,7 +191,7 @@ Lwext4 could be compiled for many targets. Here are an examples for 8/16/32/64 b
 * generic for x86 or amd64
 * arm-none-eabi-gcc for ARM cortex-m0/m3/m4 microcontrollers
 * avr-gcc for AVR xmega microcontrollers
 * generic for x86 or amd64
 * arm-none-eabi-gcc for ARM cortex-m0/m3/m4 microcontrollers
 * avr-gcc for AVR xmega microcontrollers
-* bfin-elf-gcc for blockfin processors 
+* bfin-elf-gcc for blackfin processors
 * msp430-gcc for msp430 microcontrollers
 
 Library has been tested only for generic (amd64) & ARM Cortex M architectures.
 * msp430-gcc for msp430 microcontrollers
 
 Library has been tested only for generic (amd64) & ARM Cortex M architectures.
@@ -219,14 +199,6 @@ For other targets compilation passes (with warnings somewhere) but tests are
 not done yet. Lwext4 code is written with endianes respect. Big endian
 behavior also hasn't been tested yet.
 
 not done yet. Lwext4 code is written with endianes respect. Big endian
 behavior also hasn't been tested yet.
 
-Build bf518 library:
-------------
-```bash
- make bf518
- cd build_bf518
- make lwext4
- ```
-
 Build avrxmega7 library:
 ------------
 ```bash
 Build avrxmega7 library:
 ------------
 ```bash