own *_LIB variables instead of $LIB so that we do not have to
link in the world to all executables. Modified SANE_CHECK_U_TYPES
to be a little more portable to platforms that use #define
for u_* types. Create SANE_CHECK_BACKENDS macro so that
PRELOADABLE_BACKENDS can also be valided. Auto-populated
PRELAODABLE_BACKENDS when detect dlopen() won't work.
Various protability cleanups.
* backend/dll.c: Make dll-preload.c a .h since its an include and
not compilable byitself.
* frontend/Makefile.in, frontend/scanimage.c, include/laaloca.h,
lib/Makefile.am, lib/alloca.c, strcasestr.c, tools/Makefile.in,
tools/sane-desc.c: Convert lib/ to automake. Create a liblib.la
for everyone to use and a libfelib.la for only frontend programs.
Make all internal programs be prefixed with sanei_ as not to conflict
with other programs libsane is linked in with that will also most
likely create similar internal utils on problem platforms.
* include/getopt.h, lib/getopt.c, lib/getopt1.c: Always compile
and link in getopt_long() but prefix it with sanei_. Its
easier to always use internal version then try to figure out what
platforms support getopt_long() and what header files to use.
* backend/Makefile.am: Convert backend makefile to automake.
Initial version that is feature parity with original but uses
specific rules instead of wildcards and only links in libraries/objs
really required. Room for more cleanup of whats linked in once
all makefiles have been converted to automake.
sanei/sanei_tcp.c, sanie/sanei_udp.c: Improve portablity by
removing usage of MSG_WAITALL since not all platforms support
that (cygwin). Default is to be blocking anyways. Changed
usage of MSG_NOTWAIT to use fcntl() function as needed as well.
* configure.in, lib/Makefile.in, lib/strcasestr.c: Add internal
strcasestr() for platforms missing it (cygwin).
* pixma_common.c: My source match header prototype for picky
compilers (cygwin).
* backend/umax_pp_mid.c: Allow BACKEND_NAME to be filename
yet debug to be SANE_DEBUG_UMAX_PP to match man page.
Updated backends with EXTRA_* files to allow Makefile's
to always pass in BACKEND_NAME to be fixed to backend name
instead of filename; while still making sure that
SANE_DEBUG_${BACKEND}* exist as documented in man pages.
Add references to epson and epson2 man pages about
SANE_DEBUG_EPSONx_SCSI and _NET options.
Created an epson2 man page; based mostly on epson page.
Fix a few bugs with "all" and "uninstall" targets to work when
$(builddir) != $(srcdir). Added $(DESTDIR) to uninstall target.
Made $(distdir) related to current directory to match automake.
Added code to read_data() to pad image data to
requested length and to zero out any garbage using
information from sense data command. Added new
MAINTENANCE_DATA struct and options to display
scanner's maintenance/callibration statistics.
*backend/hs2p.h
- added enum CONNECTION_TYPES
- added HS2P_DATA struct
- added SENSE_DATA struct to struct HS2P_Device
- added SANE_String_Const orientation_list[]
- added macros isset_ILI() and isset_EOM()
*backend/hs2p-scsi.h
- replaced request_sense struct with SENSE_DATA struct
- added #define DATA_TYPE_EOL (va_list sentinel)
- added MAINTENANCE_DATA struct
*backend/hs2p-saneopts.h
- added OPT_ORIENTATION
- added MAINTENANCE_DATA options
*backend/hs2p.c
- added MAINTENANCE_DATA options
- added unused connType to attach()
- added update_hs2p_data() to fill in options
- added hs2p_open() and hs2p_close()
- added get_hs2p_data() to read scanner data
- added print_maintenance_data()
- modified sane_control_options() to
accomodate new maintenance options and to
handle Portrait/Landscape option
replaced adf_status macro with s->data.adf_status
- modified sane_read() to correctly zero out the
missing bytes on an incomplete read and to pad
to the requested length
*backend/hs2p-scsi.c
- replaced request_sense() with get_sense_data()
- added print_sense_data()
- added SENSE_DATA *sdp to sense_handler()
- modified read_data() to handler other data type codes/qualifiers
- read_adf_status() now is replaced with call to
read_data(fd,*buf,*bufsize,dtc,dtq)
- round pixels_per_line down to arbitrary limits for fi-4990 & fi-4860
- fi-4860 returns random garbage to serial number queries
- initialize *info to 0 in sane_control_option()
* doc/descriptions/fujitsu.desc: backend v85, improve status/comments
* frontend/scanimage.c: initialize *info, fix buffer overwalk
- add all documented request sense codes to sense_handler()
- fix color jpeg (remove unneeded BGR to RGB swapping code)
- add macros for LUT data
* backend/canon_dr.conf.in: add DR-2080C usb ID
* doc/descriptions/canon_dr.desc: backend v10, add DR 3020
- rename read/send_counter to read/send_panel
- enable control panel during init
- add options for all buttons
- call TUR twice in wait_scanner(), even if first succeeds
- disable rif
- enable brightness/contrast/threshold options
* doc/descriptions/canon_dr.desc, doc/sane-canon_dr.man: backend v8
On Ubuntu getlogin() returns NULL. So we noew first try getlogin()
and if that fails, we try getenv("USER") and if that fails we use
a defaul user string