Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/teliosdev/excom
Chat implementation.
https://github.com/teliosdev/excom
Last synced: 1 day ago
JSON representation
Chat implementation.
- Host: GitHub
- URL: https://github.com/teliosdev/excom
- Owner: teliosdev
- License: gpl-3.0
- Created: 2014-01-17T19:26:07.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2018-11-20T02:16:36.000Z (almost 6 years ago)
- Last Synced: 2023-03-23T21:40:50.468Z (over 1 year ago)
- Language: C
- Homepage: https://github.com/redjazz96/excom
- Size: 207 KB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# excom [![Build Status](https://travis-ci.org/medcat/excom.png?branch=master)](https://travis-ci.org/medcat/excom)
An alternative to current chat implementations.
## Compiling
Before the project can be compiled, the `configure` script must be
run. It generates a header file that is used by the project.The project uses [libtoml](https://github.com/ajwans/libtoml), which
is under the 3 clause BSD license.This project uses `make`. Sorry, I'm comfortable with `make`, and I
know how to use it. However, building excom without make shouldn't
be that difficult. Excom requires the c99 standard, excluding
`stdbool.h` (it will use it if it can). Some defines and how you can
use them:
Define
Possible Values
Meaning
EXCOM_NO_STDBOOL
none
If this is defined, excom will use its own stdbool implementation.
EXCOM_INCLUDE_SERVER_CLIENT
none
If this is defined, excom will include a very basic implementation of a server that can handle reading and writing to clients. It will not be able to handle anything more than that, though.
EXCOM_EPOLL
none
If this is defined, excom will try to use epoll.
EXCOM_KQUEUE
none
If this is defined, excom will try to use kqueue. If it does not exist on the system, the compiler will error withfatal error: sys/event.h: No such file or directory.
Note: the support for kqueue in excom is still a little shakey, since I cannot test it in my current environment.
After you've defined what you need to, the main body of the code
should be able to be compiled. The Makefile compiles it into a
static library, but you can compile it into a shared object if you so
wish.## Documentation
One of the primary goals of this library is to have 100%
documentation - every function, every define, every struct. This is
to ensure that the code is understandable as to how to use it. The
code comes with a Doxyfile to allow doxygen to generate a site for the
documentation.## Usage
Sadly, in the current state, the library can't really be used :(
But we're getting there!
## Contribution
You wanna contribute? Awesome!
1. Fork it ()
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request