GitXplorerGitXplorer
p

libkern

public
6 stars
3 forks
0 issues

Commits

List of commits on branch master.
Unverified
ec32a747a9486bb402ad0deab221a749a32fa124

Licensing information added

ppetrhosek committed 12 years ago
Unverified
bbbda08f71890948172f7f19c902775450f2c085

Vector initialization functionality added

committed 13 years ago
Unverified
b8bb5477ddd5a3cc4096604e24fa8acb74071f20

Few more vector operations

committed 13 years ago
Unverified
df056027ddd8746bbc03282b359cfe01be6188fc

Extra macro check to avoid collision

committed 13 years ago
Unverified
9ec71b23d9f030c26a6dcd559db886b99a9a18a3

Makefile.am updated to include vector

committed 13 years ago
Unverified
1c1bde2f6b814de89af23574ee7d475ae7ce9e42

Merge branch 'master' of github.com:petrh/libkern

committed 13 years ago

README

The README file for this repository.

libkern library

libkern is a simple generic collection library for C99 largely based on Linux kernel sources, algoritms and data structures.

For more information, please consider visiting project website.

Features

libkern provides the following data structures and algorithms:

  • single- and double-linked lists
  • red-black trees
  • leftist heaps
  • bitmaps

Building libkern

It is now possible to automatically configure and build a variety of tools with one command. To build all of the tools contained herein, run the configure script here, e.g.:

./configure 
make

To install them (by default in /usr/local/bin, /usr/local/lib, etc), then do:

make install

(If the configure script can't determine your type of computer, give it the name as an argument, for instance ./configure sun4. You can use the script config.sub to test whether a name is recognized; if it is, config.sub translates it to a triplet specifying CPU, vendor, and OS.)

If you have more than one compiler on your system, it is often best to explicitly set CC in the environment before running configure, and to also set CC when running make. For example (assuming sh/bash/ksh):

CC=gcc ./configure
make

A similar example using csh:

setenv CC gcc
./configure
make

Much of the code and documentation enclosed is copyright by the Free Software Foundation, Inc. See the file COPYING or COPYING.LIB in the various directories, for a description of the GNU General Public License terms under which you can copy the files.

Authors

Credits

libkern implementation either uses some parts or is partially inspired by the following projects:

  • The Linux kernel released under the GNU General Public License (GPL) version 2.0.
  • The glibc library released under the GNU Lesser General Public License (LGPL) version 2.0.

License

libkern is licensed under the GNU General Public License (GPL) version 2.0 with linking exemption. This means you can link to the library with any program, commercial, open source or other. However, you cannot modify libkern and distribute it without supplying the source.