
Daniel is a system programmer & web developer with 10 years of experience...
system programmer & web developer
coder . cl
a journey in software development...
caffeine
by Daniel Molina Wegener on 21-05-2007caffeine is a C programming language project. It’s a library oriented to services in a primary instance. Should be extended more in the future. The code is organized in modules, each module is documented in his own header using doxygen. At the TRUNK revision, I’ve coded the next modules:
POSIX threads support.
IPC support (SVr4 semaphores, POSIX semaphores, messaging and shared memory)
Data Packer
Data Parser
Process Pool
Buffer Management
File I/O Event Handling
Networked I/O Event Handling
Controled File I/O
The main goal of the library is that every line of code must be portable, in the case of non portable layers, must conform to an abstraction layer to gain generalized access to system specific functions. Also, the flags used by the compiler are:
-Wall -Wextra -Wshadow -pedantic -std=c99
Which means that any gnu specific code can’t be inserted in the project. Other goal is to use standards, the C dialect used in the project must be ISO/IEC C 9899/1999, and compatible with SUSv2 and SUSv3 specifications.
caffeine is a work in progress yet, but you can download the source and collaborate with the project through Subversion. caffeine sources are hosted in SourceForge. The project data is here:
SF.net Project Page
SF.net SVN Repository Tree: https://caffeine.svn.sf.net/svnroot/caffeine/
Building tool: CMake
Common C compiler: GCC
Version Control System: Subversion
The development process is single, you download the code, build the code, test it, make contributions with code send the patches through the mailing lists and the patch will be evaluated. The copyright notices will be ensured in the AUTHORS file, like any GNU project.

