GtkExtra is a useful set of widgets for creating GUI's for the X
Window System using GTK+ 2.0. You can use it complementary to GTK+ 2.0
and it is written in C.
TinyWM is a ridiculously tiny window manager implemented in nearly as few
lines of C as possible, without being obfuscated or entirely useless. It
allows you to move, resize, focus (sloppy), and raise windows.
SimDock is a fast and customizable dockbar. It is written in c++ and wxWidgets
and fits well in Gnome but works on most desktop environments. Does not require
Compiz nor 3D acceleration.
BDB is a set of classes implementing an interface to
Berkeley DB for the GNUstep and Mac OS X environment written in
Objective-C language. It is based on the C API of
Berkeley DB and offers an object oriented interface which relies on
classes and mechanisms offered by the Foundation library.
In its present state BDB just offers a reduced set of functionality of
Berkeley DB.
LICENSE: LGPL2 or later
GNU ccRTP is an implementation of RTP, the real-time transport protocol from
the IETF (see RFC 3550, RFC 3551 and RFC 3555). ccRTP is a C++ library based
on GNU Common C++ which provides a high performance, flexible and extensible
standards-compliant RTP stack with full RTCP support. The design and
implementation of ccRTP make it suitable for high capacity servers and
gateways as well as personal client applications.
A compiler for a simple language for programming the LEGO RCX or CyberMaster
controllers. The language itself is "Not Quite C" and includes preprocessor
and control structures very similar to the C language, but with restrictions
imposed by the limitations of the RCX hardware/firmware itself.
Besides compiling, nqc also provides functions for downloading the RCX
firmware as well as uploading programs to and downloading from the RCX.
The NQC home page includes documentation for the language itself including
examples.
Java2html is a syntax highlighter for Java and C++ source code that
produces a highlighted html file as output.
Java2html offers the following features:
- support for Java and C++
- fast (single pass conversion using flex)
- doesn't change formatting - only adds <FONT COLOR=#XXXX> tags
and properly escapes non-ascii characters
- easy integration with webservers - browse your sources colourized
- gzips http output for browsers to save bandwidth (only in CGI mode)
- documentation and manpage included
AMFEXT is a PHP extension written in C that implements encoding and decoding
of AMF and AMF3 messages for the PHP language. It has been based on some of
the experience gained with AMFPP, a native code for encoding and decoding C.
The native encoding and decoding is extremely fast and memory efficient
respect existing PHP implementation, and the flexibility has been
provided using callbacks to the PHP code.
Mongoose is a small, fast and easy to use web server. It supports
CGI, SSI, SSL, Digest auth, Websocket, WEbDAV, Resumed download, URL
rewrite, file blacklist. Having SHTTPD as a predecessor, another
feature of mongoose is the ability to embed it into existing C/C++
applications. Embedded API is very clean and simple.
Mongoose has small memory footprint. Use it when other
web servers like Apache are too heavy for your tasks.
The primary goal of this project is to define a portable and efficient
C programming interface (API) to determine the call-chain of a program.
The API additionally provides the means to manipulate the preserved
(callee-saved) state of each call-frame and to resume execution at any
point in the call-chain (non-local goto). The API supports both local
(same-process) and remote (across-process) operation. As such, the API
is useful in a number of applications. Some examples include:
o exception handling
The libunwind API makes it trivial to implement the stack-manipulation
aspects of exception handling.
o debuggers
The libunwind API makes it trivial for debuggers to generate
the call-chain (backtrace) of the threads in a running program.
o introspection
It is often useful for a running thread to determine its call-chain.
For example, this is useful to display error messages (to show how
the error came about) and for performance monitoring/analysis.
o efficient setjmp()
With libunwind, it is possible to implement an extremely efficient
version of setjmp(). Effectively, the only context that needs to be
saved consists of the stack-pointer(s).