Backends use a mixture of SANE_CURRENT_{MAJOR | MINOR} and V_{MAJOR |
MINOR} with all kind of permutations. I was confused by this and one
comment in pieusb.c tells me I was not alone. Some items in old
changelogs suggest to use the SANE_CURRENT_ macros in backends, so let's
switch to do that with the exception of net.c and dll.c. Done with:
$ find backend -name '*.[ch]' | xargs sed -i '/nearly every/ ! { s/\<V_M/SANE_CURRENT_M/g }'
$ git checkout backend/net.c backend/dll.c
And manually removing the comment from pieusb.c. Everything still builds
fine.
Certain backends do network scans even if the 'local_only'
parameter for 'sane_get_devices()' is true. Fix that.
Changes:
1. Modify 'sanei_configure_attach()' so that backend specific
data may be passed to the 'attach()' function.
2. Use this in certain backends to pass the value of the
'local_only' parameter so that network related activities
are only carried out when the value is false.
It has been removed from the command-line examples as the default is
to enable when possible and the Ubuntu example says to install the
necessary libraries. The avahi library reference has been fixed.
If the value to be set is not valid, it should not change the sval
structure (even if doing so has no negative side effects).
This also makes the fallthrough less confusing by removing the first
cast of two for the br-x and br-y values.
Unless explicitly asked to do without, all formats for which required
tools are found will be built. Checks cover PostScript, PDF and HTML.
All logic and files involved are now collected in a single "section"
and grouped in such a way that their function should be clearer.
fixup! Refactor API spec conversion support