The SWIG interface file (swig/comedi.i) is out of date with respect to comedi.h
and comedilib.h. I've attempted to make it current by applying most of the
changes since 1.22 (both headers).
My ability to test is limited. The swig/ruby/demo/cmd application runs
successfully using the comedi_test device. The python extension library
compiles, but that's as far as I've taken it.
'setup.rb config' calls 'extconf.rb' in the ext directory to build the extension
Makefile. 'extconf.rb' looks for C source files in the directory when it runs,
so SWIG needs to run before 'setup.rb config'. The attached patch makes the
output of SWIG a prerequisite for ext/Makefile.
If configure attempts to build the Ruby extension on a system without a previous
installation of comedilib, compilation fails because gcc can't find comedilib.h.
The attached patch adds the distribution include directory to the gcc search
path when compiling the extension.
The attached patch updates files in comedilib/swig/ruby. lib/comedi.rb is
updated to raise Ruby exceptions as indicated by the comedilib API
documentation. README and demo/cmd are updated accordingly.