public
Description: A type/value introspection library for C++, and a Ruby library allowing to cleanly dynamically interface with C code
Homepage: http://typelib.sourceforge.net
Clone URL: git://github.com/doudou/typelib.git
commit  4ba318c420f6ab8f345b77ea3bf3641e7e3529df
tree    1d12c917841715c167693c2cb1a2660d51e20105
parent  ce67d64aa3eff22f564595fc40553c47855a827f
name age message
file .boring Fri Feb 08 06:39:16 -0800 2008 No commit message [doudou]
file CHANGES Loading commit data...
file CMakeLists.txt
file Doxyfile.in
file LICENSE.fr.txt Fri Feb 15 02:05:53 -0800 2008 Document before public release: mention copyrig... [doudou]
file LICENSE.txt Fri Feb 15 02:05:53 -0800 2008 Document before public release: mention copyrig... [doudou]
file Makefile.in
file README.txt
file TODO Wed Mar 21 02:47:26 -0700 2007 No commit message [tailor]
directory bindings/
directory cmake/
directory lang/
directory test/
directory tools/
file typelib.pc.in
directory typelib/
README.txt
Typelib is a C++ library which allows for introspection on data types and data
values. Its value model is based on the C type model. The library allows to
load definition from various type description files (including plain C), build
types programmatically, create and manipulate values from these types.

A binding to the Ruby language is provided, which allows to very easily interface
a dynamic library from within Ruby code. This Ruby binding is based on the dyncall
library, whose full source code is provided in this release.

Typelib has been written by
  Sylvain Joyeux <sylvain.joyeux@m4x.org>

Copyright 2004-2008
  LAAS/CNRS <openrobots@laas.fr>
  DGA <arnaud.paronian@dga.gouv.fr>

This software is provided under the CeCILL B License, which gives comparable terms
of use than the BSD license. See LICENSE.txt or LICENSE.fr.txt for the full license
texts.

== Installation
=== C++ library
The C++ library depends on the following:
 * the boost library, including boost/filesystem
 * utilmm which can be downloaded using Darcs with
     darcs get http://www.laas.fr/~sjoyeux/darcs/utilmm
   (check the INSTALL file)
 * the antlr parser generator
 * cmake and pkg-config
 * doxygen for the documentation (optional)
 * libxml2

When all these dependencies are installed, run
    mkdir build
    cd build
    cmake ..
    make
    make doc # to build the documentation, only if doxygen is available

and as root,
    make install

=== Ruby bindings
The installation of the Ruby bindings require the following:
 * the ruby interpreter version 1.8 and the associated
   development files.
   Under Debian, these are named ruby1.8 and libruby1.8-dev
 * testrb for the test suite
 * rdoc for generating the documentation (optional)

At runtime, the bindings require the following:
 * utilrb, which is best downloaded as a gem. See
     http://www.rubygems.org for information about the RubyGems
     system. This system can be installed by the rubygems
     package on Debian.
 
   When you have installed rubygems, run
     gem install utilrb

   You may have to run it as root if RubyGems is installed
   globally (this is the case for Debian's rubygems package)

   You can also find the sources at
     git clone http://www.laas.fr/~sjoyeux/git/utilrb.git
   read the INSTALL.txt file

=== Quick Debian installation guide

Run as root
  apt-get install build-essential cmake pkg-config libboost-dev libboost-filesystem-dev ruby1.8-dev libtest-unit-ruby 
  rubygems cantlr libantlr-dev doxygen rdoc1.8 libxml2-dev
  gem install utilrb

Run as a normal user
  <go into a source directory>
  darcs get http://www.laas.fr/~sjoyeux/darcs/utilmm
  <install the utilmm library by following instructions in
  utilmm/INSTALL>

  <go into Typelib source directory>
  mkdir build
  cd build
  cmake ..
  make
  make doc

Run as root
  make install