[sane-devel] backend naming conventions/constraints

Olaf Meeuwissen olaf@epkowa.co.jp
28 Feb 2003 20:50:44 +0900


I tried getting things to work with a hyphenated backend name, but to
no avail.  The dll backend uses the literal name in dll.conf to check
for functions in the backend :-(
Here's part of the output of running iscan with SANE_DEBUG_DLL=128:

  [dll] load: dlopen()ing `/usr/lib/sane/libsane-epson-kowa.so.1'
  [dll] load: unable to find _sane_epson-kowa_init
  [dll] load: unable to find _sane_epson-kowa_exit
  [dll] load: unable to find _sane_epson-kowa_get_devices
  [dll] load: unable to find _sane_epson-kowa_open
  [dll] load: unable to find _sane_epson-kowa_close
  [dll] load: unable to find _sane_epson-kowa_get_option_descriptor
  [dll] load: unable to find _sane_epson-kowa_control_option
  [dll] load: unable to find _sane_epson-kowa_get_parameters
  [dll] load: unable to find _sane_epson-kowa_start
  [dll] load: unable to find _sane_epson-kowa_read
  [dll] load: unable to find _sane_epson-kowa_cancel
  [dll] load: unable to find _sane_epson-kowa_set_io_mode
  [dll] load: unable to find _sane_epson-kowa_get_select_fd

Some minor mods in the dll backend could easily fix that (I'd think),
but since I have to rely on existing sane-backends packages out there
that is not an option for me right now.  I'll go with epkowa for the
backend.

Olaf Meeuwissen <olaf@epkowa.co.jp> writes:

> Henning Meier-Geinitz <henning@meier-geinitz.de> writes:
> > On Thu, Feb 27, 2003 at 09:16:35AM +0900, Olaf Meeuwissen wrote:
> > > Yup, backends/Makefile.in uses
> > > 
> > >   %-s.lo: %-s.c
> > >           @$(LIBTOOL) $(MCOMP) $(COMPILE) -DSTUBS -DBACKEND_NAME=$* $<
> > > 
> > >   %.lo:   %.c
> > >           @$(LIBTOOL) $(MCOMP) $(COMPILE) -DBACKEND_NAME=$* \
> > >                 -DLIBDIR=$(libsanedir) $<
> > > 
> > > So using epson-kowa.c screws things up.  However, I only have one
> > > backend to build with "Image Scan!" so I could hack around this.
> > > Either in Makefile.in or in my source file.

I hacked around this with -DBACKEND_NAME=$(subst -,_,$*) to keep my
sources compilable.

-- 
Olaf Meeuwissen                            EPSON KOWA Corporation, ECS
GnuPG key: 6BE37D90/AB6B 0D1F 99E7 1BF5 EB97  976A 16C7 F27D 6BE3 7D90
Penguin's lib!       -- I hack, therefore I am --               LPIC-2