If everything mentioned above is available on your system, type
- make
+ make
to build the library, the oslfsck executable and the man page. Then
type
- make install
- ldconfig
+ make install
+ ldconfig
as root to install libosl, oslfsck and the man page. The default
installation prefix is /usr/local. Use
- make install PREFIX=/somewhere/else
+ make install PREFIX=/somewhere/else
to install in /somewhere/else instead.
and are not needed to compile, install or use libosl. In order to
make these targets the following additional tools are needed:
- - http://www.stack.nl/~dimitri/doxygen/ (doxygen)
- - http://www.triptico.com/software/grutatxt.html (grutatxt)
- - convert (from the http://www.imagemagick.org/script/index.php (ImageMagick) package)
+- [doxygen](http://www.stack.nl/~dimitri/doxygen/)
+- [discount](http://www.pell.portland.or.us/~orc/Code/discount/)
+- [ImageMagick](http://www.imagemagick.org/script/index.php)
The osl logo was created with Adobe Illustrator by Sebastian Schultheiss.
web/index.html: oslfsck.1 web/index.html.in INSTALL README
sed -e '/@README@/,$$d' web/index.html.in > $@
- grutatxt -nb < README >> $@
+ markdown < README >> $@
sed -e '1,/@README@/d' -e '/@INSTALL@/,$$d' web/index.html.in >> $@
- grutatxt -nb < INSTALL >> $@
+ markdown < INSTALL >> $@
sed -e '1,/@INSTALL@/d' -e '/@MAN_PAGE@/,$$d' web/index.html.in >> $@
groff -m man -Thtml -P -l oslfsck.1 | sed -e '1,/^<body>/d; /^<\/body>/,$$d' >> $@
sed -e '1,/@MAN_PAGE@/d' web/index.html.in >> $@
Libosl is simple:
- - For libosl, all data stored in the osl tables are blobs,
- libosl will never try to interpret the table contents.
+- For libosl, all data stored in the osl tables are blobs,
+libosl will never try to interpret the table contents.
- - There is no fancy query language but only a relatively
- simple C-API.
+- There is no fancy query language but only a relatively
+simple C-API.
- - There's no network support for network-access and libosl
- only uses a very rudimentary table locking mechanism.
+- There's no network support for network-access and libosl
+only uses a very rudimentary table locking mechanism.
- - There are no dependencies on external libraries. An augmented
- version of the red-black tree implementation of the linux
- kernel is in included in the libosl package.
+- There are no dependencies on external libraries. An augmented
+version of the red-black tree implementation of the linux
+kernel is in included in the libosl package.
Libosl is fast:
- - It uses sha1 hashes for content-based addressing.
+- It uses sha1 hashes for content-based addressing.
- - Red-black trees are used to make lookups fast.
+- Red-black trees are used to make lookups fast.
Libosl is portable:
- - It is known to compile and run on Linux, MacOS, FreeBSD,
- NetBSD and Solaris.
+- It is known to compile and run on Linux, MacOS, FreeBSD,
+NetBSD and Solaris.
- - Content and metadata is stored in an endian-agnostic way.
+- Content and metadata is stored in an endian-agnostic way.
Libosl is open source:
- - Licensed under the GPL, version 2.
+- Licensed under the GPL, version 2.
Apart from the library itself, the package also contains simple
examples and an fsck program, oslfsck, which can be used to recover