Skip to content
Snippets Groups Projects
Makefile.am 78.6 KiB
Newer Older
  • Learn to ignore specific revisions
  • ##  Makefile.am -- an automake template for Makefile.in file
    ##  Copyright (C) 2009 Chris Bagwell, Olaf Meeuwissen, and Sane Developers.
    ##
    ##  This file is part of the "Sane" build infra-structure.  See
    ##  included LICENSE file for license information.
    
    
    AM_CPPFLAGS += -I. -I$(srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include $(USB_CFLAGS) -DLIBDIR="\"$(libdir)/sane\""
    
    AM_LDFLAGS += $(STRICT_LDFLAGS)
    
    # The -rpath option is added because we are creating _LTLIBRARIES based
    # on configure substitution.  This causes automake to not know the
    # correct $libdir and must be added here.
    
    DIST_SANELIBS_LDFLAGS = $(AM_LDFLAGS) -rpath '$(libdir)/sane' -version-number $(V_MAJOR):$(V_MINOR):$(V_REV) $(DYNAMIC_FLAG)
    DIST_LIBS_LDFLAGS = $(AM_LDFLAGS) -rpath '$(libdir)' -version-number $(V_MAJOR):$(V_MINOR):$(V_REV)
    
    
    # LIBTOOL install is a little to noisy for my liking.
    
    FIRMWARE_DIRS = artec_eplus48u gt68xx snapscan epjitsu
    
    
    # Needed by most backends as they add sane_strstatus.lo to their list
    # of libraries to link with via libsane_${BACKEND}_la_LIBADD.  Due to
    # the implicit dependency, automake does not notice the need to clean
    # up the dependency tracking file.
    
    EXTRA_DIST = sane_strstatus.c
    
    CLEANFILES = $(DEPDIR)/sane_strstatus.Plo
    
    
    all: becfg
    
    EXTRA_DIST += stubs.c
    
    # FIXME: % is a GNU extension... This is only thing left requiring
    # use to use GNU make.
    %-s.c: $(srcdir)/stubs.c
    
    	$(AM_V_at)rm -f $@
    	$(AM_V_at)$(LN_S) $(srcdir)/stubs.c $@
    
    %-s.cpp: $(srcdir)/stubs.c
    
    	$(AM_V_at)rm -f $@
    	$(AM_V_at)$(LN_S) $(srcdir)/stubs.c $@
    
    
    	$(AM_V_at)rm -f $@
    	$(AM_V_at)list="$(PRELOADABLE_BACKENDS)"; for be in $$list; do \
    
    	  echo "PRELOAD_DECL($$be)" >> $@; \
    
    	done; \
    	echo "static struct backend preloaded_backends[] = {" >> $@; \
    
    	list="$(PRELOADABLE_BACKENDS)"; \
    	if test -z "$${list}"; then \
    	  echo { 0, 0, 0, 0, 0, 0, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }} >> $@; \
    	else \
    	  for be in $$list; do \
    
    	    echo "$${sep}PRELOAD_DEFN($$be)" >> $@; \
    	    sep=","; \
    
    	echo "};" >> $@
    
    # TODO: This really belongs together with the saned sources and
    # should be installed there as well.
    EXTRA_DIST += saned.conf.in
    
    
    # Backends are not required to have a config file. Any backend
    # that wants to install a config file should list it here.
    
    BACKEND_CONFS= abaton.conf agfafocus.conf apple.conf artec.conf \
    	       artec_eplus48u.conf avision.conf bh.conf \
    	       canon630u.conf canon.conf canon_dr.conf \
    
    Pim van Tend's avatar
    Pim van Tend committed
                   canon_lide70.conf \
    
    	       canon_pp.conf cardscan.conf coolscan2.conf coolscan3.conf \
    	       coolscan.conf dc210.conf dc240.conf dc25.conf \
    	       dell1600n_net.conf dmc.conf epjitsu.conf epson2.conf \
    
    Touboul Nathane's avatar
    Touboul Nathane committed
    	       epson.conf epsonds.conf escl.conf fujitsu.conf genesys.conf \
    	       gphoto2.conf gt68xx.conf hp3900.conf hp4200.conf hp5400.conf \
    
    	       hp.conf hpsj5s.conf hs2p.conf ibm.conf kodak.conf kodakaio.conf\
    
    	       kvs1025.conf leo.conf lexmark.conf lexmark_x2600.conf \
                   ma1509.conf magicolor.conf \
    
    	       matsushita.conf microtek2.conf microtek.conf mustek.conf \
    
    	       mustek_pp.conf mustek_usb.conf nec.conf net.conf \
    
    Klaus Kämpf's avatar
    Klaus Kämpf committed
    	       pie.conf pieusb.conf pixma.conf plustek.conf plustek_pp.conf \
    
    	       qcam.conf ricoh.conf rts8891.conf s9036.conf sceptre.conf \
    	       sharp.conf sm3840.conf snapscan.conf sp15c.conf \
    	       st400.conf stv680.conf tamarack.conf \
    	       teco1.conf teco2.conf teco3.conf test.conf \
    	       u12.conf umax1220u.conf umax.conf umax_pp.conf v4l.conf \
    
    	       xerox_mfp.conf dll.conf saned.conf
    
    # Although ./configure sets up BACKEND_CONFS_ENABLED it does not take
    # into account the fact that some backends don't have a configuration
    # file.  The becfg should depend on BACKEND_CONFS.  The install-becfg
    # target uses BACKEND_CONFS_ENABLED and silently skips missing files.
    
    becfg: $(BACKEND_CONFS)
    
    SUFFIXES = .conf.in .conf
    .conf.in.conf:
    
    	$(AM_V_GEN)
    	@if $(AM_V_P); then echo Generating $@ from $^; fi
    
    	@sed -e 's|@DATADIR@|$(datadir)|g' \
    	     -e 's|@CONFIGDIR@|$(configdir)|g' \
    	     -e 's|@DOCDIR@|$(docdir)|g' \
    	     -e 's|@LIBDIR@|$(libdir)/sane|g' \
    	     -e 's|@BINDIR@|$(bindir)|g' \
    	     -e 's|@SBINDIR@|$(sbindir)|g' \
    	     -e 's|@PACKAGEVERSION@|$(PACKAGE_VERSION)|g' $? > $@
    
    install-data-hook: install-becfg install-firmware-path $(INSTALL_LOCKPATH)
    
    
    # Custom install target to install config files.  Do not overwrite
    # files that have been previously installed so that user modifications
    # are not lost.
    
    	@# Libtool has a bug where it will sometimes symlink the last
    
    	@# installed library in $(execsanelibdir) to libsane.*, which
    	@# causes a conflict with the actual libsane.* in $(libdir).
    	-rm -f $(DESTDIR)$(execsanelibdir)/libsane.*
    
    	test -z "$(configdir)" || $(MKDIR_P) "$(DESTDIR)$(configdir)"
    
    	test -z "$(configdir)/dll.d" || $(MKDIR_P) "$(DESTDIR)$(configdir)/dll.d"
    
    	@list="$(BACKEND_CONFS_ENABLED) saned.conf dll.conf"; for cfg in $$list; do \
    	  if test ! -r $${cfg}; then continue; fi; \
    	  if test -f $(DESTDIR)$(configdir)/$${cfg}; then \
    	  echo NOT overwriting $${cfg} in $(configdir)...; \
    	  else \
    	  echo installing $${cfg} in $(configdir)/$${cfg}...; \
    	  $(INSTALL_DATA) $${cfg} $(DESTDIR)$(configdir)/$${cfg} \
    	  || exit 1; \
    	  fi; \
    	  done
    
    install-firmware-path:
    	for dir in $(FIRMWARE_DIRS) ; do \
    	  $(mkinstalldirs) $(DESTDIR)$(datadir)/sane/$${dir} ; \
    	  done
    
    install-lockpath:
    
    	$(mkinstalldirs) -m 775 $(DESTDIR)$(locksanedir)
    
    
    uninstall-hook:
    	rm -rf $(DESTDIR)$(libdir)/sane $(DESTDIR)$(configdir) $(DESTDIR)$(locksanedir)
    	rm -f $(DESTDIR)$(libdir)/libsane.*
    	-for dir in $(FIRMWARE_DIRS) ; do \
    	  rmdir $(DESTDIR)$(datadir)/sane/$${dir} ; \
    
    CLEANFILES += $(BACKEND_CONFS) $(be_convenience_libs)
    
    clean-local:
    	find . -type l -name \*-s.c | xargs rm -f
    
    
    # All possible backends should be listed here.  As a first step, we create
    # a convenience library containing all files needed to link a backend
    # directly into libsane.la.  Convenience library should have the
    # form of lib${backend}.la to match what configure will list to
    # build.
    # Occasionally, this approach will have name conflicts with external
    
    # libraries that need to be linked in.  See libgphoto2_i.la for
    
    # example of working around that issue.
    
    be_convenience_libs = libabaton.la libagfafocus.la \
        libapple.la libartec.la libartec_eplus48u.la \
        libas6e.la libavision.la libbh.la \
        libcanon.la libcanon630u.la libcanon_dr.la \
    
    Pim van Tend's avatar
    Pim van Tend committed
        libcanon_lide70.la \
    
        libcanon_pp.la libcardscan.la libcoolscan.la \
        libcoolscan2.la libcoolscan3.la libdc25.la \
        libdc210.la libdc240.la libdell1600n_net.la \
    
        libdmc.la libdll.la libdll_preload.la libepjitsu.la libepson.la \
    
    Touboul Nathane's avatar
    Touboul Nathane committed
        libepson2.la libepsonds.la libescl.la libfujitsu.la libgenesys.la \
    
        libgphoto2_i.la libgt68xx.la libhp.la \
        libhp3500.la libhp3900.la libhp4200.la \
        libhp5400.la libhp5590.la libhpljm1005.la \
    
        libhpsj5s.la libhs2p.la libibm.la libkodak.la libkodakaio.la\
    
        libkvs1025.la libkvs20xx.la libkvs40xx.la \
    
        libleo.la liblexmark.la liblexmark_x2600.la libma1509.la libmagicolor.la \
    
        libmatsushita.la libmicrotek.la libmicrotek2.la \
        libmustek.la libmustek_pp.la libmustek_usb.la \
        libmustek_usb2.la libnec.la libnet.la \
    
        libniash.la libp5.la \
    
    Klaus Kämpf's avatar
    Klaus Kämpf committed
        libpie.la libpieusb.la libpint.la libpixma.la \
    
        libplustek.la libplustek_pp.la libpnm.la \
    
        libqcam.la libricoh.la libricoh2.la librts8891.la \
    
        libs9036.la libsceptre.la libsharp.la \
        libsm3600.la libsm3840.la libsnapscan.la \
        libsp15c.la libst400.la libstv680.la \
        libtamarack.la libtest.la libteco1.la \
        libteco2.la libteco3.la libu12.la libumax.la \
        libumax1220u.la libumax_pp.la libv4l.la \
        libxerox_mfp.la
    
    
    # Each stand-alone backend that's possible to be built should be listed
    
    # here.  There are the libraries that are installed under $(libdir)/sane.
    # Format is libsane-${backend}.la.
    
    be_dlopen_libs = libsane-abaton.la libsane-agfafocus.la \
        libsane-apple.la libsane-artec.la libsane-artec_eplus48u.la \
        libsane-as6e.la libsane-avision.la libsane-bh.la \
        libsane-canon.la libsane-canon630u.la libsane-canon_dr.la \
    
    Pim van Tend's avatar
    Pim van Tend committed
        libsane-canon_lide70.la \
    
        libsane-canon_pp.la libsane-cardscan.la libsane-coolscan.la \
        libsane-coolscan2.la libsane-coolscan3.la libsane-dc25.la \
        libsane-dc210.la libsane-dc240.la libsane-dell1600n_net.la \
        libsane-dmc.la libsane-epjitsu.la libsane-epson.la \
    
    Touboul Nathane's avatar
    Touboul Nathane committed
        libsane-epson2.la libsane-epsonds.la libsane-escl.la libsane-fujitsu.la \
        libsane-genesys.la libsane-gphoto2.la libsane-gt68xx.la libsane-hp.la \
    
        libsane-hp3500.la libsane-hp3900.la libsane-hp4200.la \
        libsane-hp5400.la libsane-hp5590.la libsane-hpljm1005.la \
    
        libsane-hpsj5s.la libsane-hs2p.la libsane-ibm.la libsane-kodak.la libsane-kodakaio.la\
    
        libsane-kvs1025.la libsane-kvs20xx.la libsane-kvs40xx.la \
        libsane-leo.la \
    
        libsane-lexmark.la libsane-lexmark_x2600.la libsane-ma1509.la libsane-magicolor.la \
    
        libsane-matsushita.la libsane-microtek.la libsane-microtek2.la \
        libsane-mustek.la libsane-mustek_pp.la libsane-mustek_usb.la \
        libsane-mustek_usb2.la libsane-nec.la libsane-net.la \
    
        libsane-niash.la libsane-p5.la \
    
    Klaus Kämpf's avatar
    Klaus Kämpf committed
        libsane-pie.la libsane-pieusb.la libsane-pint.la libsane-pixma.la \
    
        libsane-plustek.la libsane-plustek_pp.la libsane-pnm.la \
    
        libsane-qcam.la libsane-ricoh.la libsane-ricoh2.la libsane-rts8891.la \
    
        libsane-s9036.la libsane-sceptre.la libsane-sharp.la \
        libsane-sm3600.la libsane-sm3840.la libsane-snapscan.la \
        libsane-sp15c.la libsane-st400.la libsane-stv680.la \
        libsane-tamarack.la libsane-test.la libsane-teco1.la \
        libsane-teco2.la libsane-teco3.la libsane-u12.la libsane-umax.la \
        libsane-umax1220u.la libsane-umax_pp.la libsane-v4l.la \
        libsane-xerox_mfp.la
    
    EXTRA_LTLIBRARIES = $(be_convenience_libs) $(be_dlopen_libs)
    
    lib_LTLIBRARIES = libsane.la
    
    
    # The libraries in $(libdir)/sane are platform-dependent files, so they
    # should be installed during "make install-exec". For that reason, the
    # variable names here must contain "exec".
    execsanelibdir = $(libdir)/sane
    execsanelib_LTLIBRARIES = $(BACKEND_LIBS_ENABLED) libsane-dll.la
    
    COMMON_LIBS = ../lib/liblib.la $(XML_LIBS)
    
    # Each backend should define a convenience library that compiles
    # all related files within backend directory.  General guideline
    # is to have a ${backend}.c and ${backend}.h.  Some backends also
    
    # add a few support source files to convenience library.
    
    # Note: automake doesn't really use header files listed here.
    
    # They are indications that they need to be distributed only.
    
    libabaton_la_SOURCES = abaton.c abaton.h
    libabaton_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=abaton
    
    
    # Each backend should define a stand-alone library that gets installed.
    
    # This will need to link in a special file ${backend}-s.c that allows
    
    # the backend to be stand-alone and contain all SANE API functions.
    
    # Also, it will need to link in related convenience library as well as
    # any external libraries required to resolve symbols.
    #
    
    # All backends should include $(DIST_SANELIBS_LDFLAGS) so that
    
    # library is correctly versioned.
    #
    # If a backend has a config file, it must be listed here to get distributed.
    
    nodist_libsane_abaton_la_SOURCES = abaton-s.c
    libsane_abaton_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=abaton
    libsane_abaton_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_abaton_la_LIBADD = $(COMMON_LIBS) \
        libabaton.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_scsi.lo \
        $(SCSI_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += abaton.conf.in
    
    libagfafocus_la_SOURCES = agfafocus.c agfafocus.h
    
    libagfafocus_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=agfafocus
    
    
    nodist_libsane_agfafocus_la_SOURCES = agfafocus-s.c
    
    libsane_agfafocus_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=agfafocus
    
    libsane_agfafocus_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_agfafocus_la_LIBADD = $(COMMON_LIBS) \
        libagfafocus.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_thread.lo \
        ../sanei/sanei_scsi.lo \
        $(SCSI_LIBS) $(SANEI_THREAD_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += agfafocus.conf.in
    
    libapple_la_SOURCES = apple.c apple.h
    libapple_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=apple
    
    nodist_libsane_apple_la_SOURCES = apple-s.c
    libsane_apple_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=apple
    libsane_apple_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_apple_la_LIBADD = $(COMMON_LIBS) \
        libapple.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_scsi.lo \
        $(SCSI_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += apple.conf.in
    
    libartec_la_SOURCES = artec.c artec.h
    libartec_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=artec
    
    nodist_libsane_artec_la_SOURCES = artec-s.c
    libsane_artec_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    libsane_artec_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=artec
    
    libsane_artec_la_LIBADD = $(COMMON_LIBS) \
        libartec.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_scsi.lo \
        $(SCSI_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += artec.conf.in
    
    libartec_eplus48u_la_SOURCES = artec_eplus48u.c artec_eplus48u.h
    libartec_eplus48u_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=artec_eplus48u
    
    nodist_libsane_artec_eplus48u_la_SOURCES = artec_eplus48u-s.c
    libsane_artec_eplus48u_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=artec_eplus48u
    libsane_artec_eplus48u_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_artec_eplus48u_la_LIBADD = $(COMMON_LIBS) \
        libartec_eplus48u.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_thread.lo \
        $(MATH_LIB) $(USB_LIBS) $(SANEI_THREAD_LIBS) $(RESMEG_LIBS)
    
    EXTRA_DIST += artec_eplus48u.conf.in
    
    libas6e_la_SOURCES = as6e.c as6e.h
    libas6e_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=as6e
    
    nodist_libsane_as6e_la_SOURCES = as6e-s.c
    libsane_as6e_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=as6e
    libsane_as6e_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_as6e_la_LIBADD = $(COMMON_LIBS) libas6e.la ../sanei/sanei_init_debug.lo ../sanei/sanei_constrain_value.lo ../sanei/sanei_config.lo  sane_strstatus.lo
    
    
    libavision_la_SOURCES = avision.c avision.h
    libavision_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=avision
    
    
    nodist_libsane_avision_la_SOURCES = avision-s.c
    
    libsane_avision_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=avision
    libsane_avision_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_avision_la_LIBADD = $(COMMON_LIBS) \
        libavision.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_thread.lo \
        ../sanei/sanei_scsi.lo \
        $(MATH_LIB) $(SCSI_LIBS) $(USB_LIBS) $(SANEI_THREAD_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += avision.conf.in
    
    libbh_la_SOURCES = bh.c bh.h
    libbh_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=bh
    
    nodist_libsane_bh_la_SOURCES = bh-s.c
    libsane_bh_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=bh
    libsane_bh_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_bh_la_LIBADD = $(COMMON_LIBS) libbh.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_scsi.lo \
        $(SCSI_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += bh.conf.in
    
    libcanon_la_SOURCES = canon.c canon.h
    libcanon_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon
    
    
    nodist_libsane_canon_la_SOURCES = canon-s.c
    
    libsane_canon_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon
    libsane_canon_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_canon_la_LIBADD = $(COMMON_LIBS) libcanon.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_scsi.lo \
        $(MATH_LIB) $(SCSI_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += canon.conf.in
    
    # TODO: Why are these distributed but not compiled?
    
    EXTRA_DIST += canon-sane.c canon-scsi.c
    
    libcanon630u_la_SOURCES = canon630u.c
    libcanon630u_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon630u
    
    nodist_libsane_canon630u_la_SOURCES = canon630u-s.c
    libsane_canon630u_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon630u
    libsane_canon630u_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_canon630u_la_LIBADD = $(COMMON_LIBS) \
        libcanon630u.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
         sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
         $(MATH_LIB) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += canon630u.conf.in
    
    # TODO: Why are this distributed but not compiled?
    
    EXTRA_DIST += canon630u-common.c lm9830.h
    
    libcanon_dr_la_SOURCES = canon_dr.c canon_dr.h canon_dr-cmd.h
    libcanon_dr_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon_dr
    
    
    nodist_libsane_canon_dr_la_SOURCES = canon_dr-s.c
    
    libsane_canon_dr_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon_dr
    libsane_canon_dr_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_canon_dr_la_LIBADD = $(COMMON_LIBS) \
        libcanon_dr.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_scsi.lo \
        ../sanei/sanei_magic.lo \
        $(MATH_LIB) $(SCSI_LIBS) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += canon_dr.conf.in
    
    
    Pim van Tend's avatar
    Pim van Tend committed
    libcanon_lide70_la_SOURCES = canon_lide70.c
    libcanon_lide70_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon_lide70
    
    nodist_libsane_canon_lide70_la_SOURCES = canon_lide70-s.c
    libsane_canon_lide70_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon_lide70
    libsane_canon_lide70_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_canon_lide70_la_LIBADD = $(COMMON_LIBS) \
        libcanon_lide70.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
         sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
         $(MATH_LIB) $(USB_LIBS) $(RESMGR_LIBS)
    
    Pim van Tend's avatar
    Pim van Tend committed
    EXTRA_DIST += canon_lide70.conf.in
    # TODO: Why are this distributed but not compiled?
    EXTRA_DIST += canon_lide70-common.c
    
    
    libcanon_pp_la_SOURCES = canon_pp.c canon_pp.h canon_pp-io.c canon_pp-io.h canon_pp-dev.c canon_pp-dev.h
    libcanon_pp_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon_pp
    
    nodist_libsane_canon_pp_la_SOURCES = canon_pp-s.c
    libsane_canon_pp_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=canon_pp
    libsane_canon_pp_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_canon_pp_la_LIBADD = $(COMMON_LIBS) \
        libcanon_pp.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
         sane_strstatus.lo \
        $(IEEE1284_LIBS)
    
    EXTRA_DIST += canon_pp.conf.in
    
    libcardscan_la_SOURCES = cardscan.c cardscan.h
    libcardscan_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=cardscan
    
    nodist_libsane_cardscan_la_SOURCES = cardscan-s.c
    libsane_cardscan_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=cardscan
    libsane_cardscan_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_cardscan_la_LIBADD = $(COMMON_LIBS) \
        libcardscan.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
         sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += cardscan.conf.in
    
    libcoolscan_la_SOURCES = coolscan.c coolscan.h coolscan-scsidef.h
    libcoolscan_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=coolscan
    
    nodist_libsane_coolscan_la_SOURCES = coolscan-s.c
    libsane_coolscan_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=coolscan
    libsane_coolscan_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_coolscan_la_LIBADD = $(COMMON_LIBS) \
        libcoolscan.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_thread.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_scsi.lo \
        $(MATH_LIB) $(SCSI_LIBS) $(USB_LIBS) $(SANEI_THREAD_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += coolscan.conf.in
    
    libcoolscan2_la_SOURCES = coolscan2.c
    libcoolscan2_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=coolscan2
    
    nodist_libsane_coolscan2_la_SOURCES = coolscan2-s.c
    libsane_coolscan2_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=coolscan2
    libsane_coolscan2_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_coolscan2_la_LIBADD = $(COMMON_LIBS) \
        libcoolscan2.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_scsi.lo \
        $(SCSI_LIBS) $(MATH_LIB) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += coolscan2.conf.in
    
    libcoolscan3_la_SOURCES = coolscan3.c
    libcoolscan3_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=coolscan3
    
    nodist_libsane_coolscan3_la_SOURCES = coolscan3-s.c
    libsane_coolscan3_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=coolscan3
    libsane_coolscan3_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_coolscan3_la_LIBADD = $(COMMON_LIBS) \
        libcoolscan3.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_scsi.lo \
        $(SCSI_LIBS) $(MATH_LIB) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += coolscan3.conf.in
    
    libdc25_la_SOURCES = dc25.c dc25.h
    libdc25_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dc25
    
    nodist_libsane_dc25_la_SOURCES = dc25-s.c
    libsane_dc25_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dc25
    libsane_dc25_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_dc25_la_LIBADD = $(COMMON_LIBS) \
        libdc25.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
         sane_strstatus.lo \
        $(MATH_LIB)
    
    EXTRA_DIST += dc25.conf.in
    
    libdc210_la_SOURCES = dc210.c dc210.h
    libdc210_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dc210
    
    nodist_libsane_dc210_la_SOURCES = dc210-s.c
    libsane_dc210_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dc210
    libsane_dc210_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_dc210_la_LIBADD = $(COMMON_LIBS) \
        libdc210.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        $(SANEI_SANEI_JPEG_LO) $(JPEG_LIBS)
    
    EXTRA_DIST += dc210.conf.in
    
    libdc240_la_SOURCES = dc240.c dc240.h
    libdc240_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dc240
    
    nodist_libsane_dc240_la_SOURCES = dc240-s.c
    libsane_dc240_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dc240
    libsane_dc240_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_dc240_la_LIBADD = $(COMMON_LIBS) \
        libdc240.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        $(SANEI_SANEI_JPEG_LO) $(JPEG_LIBS)
    
    EXTRA_DIST += dc240.conf.in
    
    libdell1600n_net_la_SOURCES = dell1600n_net.c
    libdell1600n_net_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dell1600n_net
    
    nodist_libsane_dell1600n_net_la_SOURCES = dell1600n_net-s.c
    libsane_dell1600n_net_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dell1600n_net
    libsane_dell1600n_net_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_dell1600n_net_la_LIBADD = $(COMMON_LIBS) \
        libdell1600n_net.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        $(TIFF_LIBS) $(JPEG_LIBS) $(SOCKET_LIBS)
    
    EXTRA_DIST += dell1600n_net.conf.in
    
    libdmc_la_SOURCES = dmc.c dmc.h
    libdmc_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dmc
    
    nodist_libsane_dmc_la_SOURCES = dmc-s.c
    libsane_dmc_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=dmc
    libsane_dmc_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_dmc_la_LIBADD = $(COMMON_LIBS) \
        libdmc.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_scsi.lo \
        $(SCSI_LIBS) $(RESMGR_LIBS)
    
    Touboul Nathane's avatar
    Touboul Nathane committed
    if have_libavahi
    if have_libcurl
    if have_libxml2
    
    libescl_la_SOURCES = escl/escl.c \
    	escl/escl_capabilities.c \
    	escl/escl_devices.c \
    	escl/escl.h \
    	escl/escl_newjob.c \
    	escl/escl_reset.c \
    	escl/escl_scan.c \
    	escl/escl_status.c \
    	escl/escl_jpeg.c \
    	escl/escl_png.c \
    	escl/escl_tiff.c \
    	escl/escl_pdf.c \
    	escl/escl_crop.c
    libescl_la_CPPFLAGS = $(AM_CPPFLAGS) $(JPEG_CFLAGS) $(PNG_CFLAGS) $(TIFF_CFLAGS) $(POPPLER_GLIB_CFLAGS) $(XML_CFLAGS) $(libcurl_CFLAGS) $(AVAHI_CFLAGS) -DBACKEND_NAME=escl
    
    Touboul Nathane's avatar
    Touboul Nathane committed
    
    nodist_libsane_escl_la_SOURCES = escl-s.c
    
    libsane_escl_la_CPPFLAGS = $(AM_CPPFLAGS) $(JPEG_CFLAGS) $(PNG_CFLAGS) $(TIFF_CFLAGS) $(POPPLER_GLIB_CFLAGS) $(XML_CFLAGS) $(libcurl_CFLAGS) $(AVAHI_CFLAGS) -DBACKEND_NAME=escl
    libsane_escl_la_CFLAGS = $(AM_CFLAGS) $(JPEG_CFLAGS) $(PNG_CFLAGS) $(TIFF_CFLAGS) $(POPPLER_GLIB_CFLAGS) $(XML_CFLAGS) $(libcurl_CFLAGS) $(AVAHI_CFLAGS) -DBACKEND_NAME=escl
    
    Touboul Nathane's avatar
    Touboul Nathane committed
    libsane_escl_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_escl_la_LIBADD = $(COMMON_LIBS) \
        libescl.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        $(MATH_LIB) $(JPEG_LIBS) $(PNG_LIBS) $(TIFF_LIBS) $(POPPLER_GLIB_LIBS) \
        $(XML_LIBS) $(libcurl_LIBS) $(AVAHI_LIBS)
    
    Touboul Nathane's avatar
    Touboul Nathane committed
    endif
    endif
    endif
    EXTRA_DIST += escl.conf.in
    
    
    libepjitsu_la_SOURCES = epjitsu.c epjitsu.h epjitsu-cmd.h
    libepjitsu_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epjitsu
    
    nodist_libsane_epjitsu_la_SOURCES = epjitsu-s.c
    libsane_epjitsu_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epjitsu
    libsane_epjitsu_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_epjitsu_la_LIBADD = $(COMMON_LIBS) \
        libepjitsu.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        $(MATH_LIB) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += epjitsu.conf.in
    
    libepson_la_SOURCES = epson.c epson.h epson_scsi.c epson_scsi.h epson_usb.c epson_usb.h
    libepson_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epson
    
    nodist_libsane_epson_la_SOURCES = epson-s.c
    libsane_epson_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epson
    libsane_epson_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_epson_la_LIBADD = $(COMMON_LIBS) \
        libepson.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_scsi.lo \
        ../sanei/sanei_pio.lo \
    
        ../sanei/sanei_directio.lo \
    
        $(SCSI_LIBS) $(USB_LIBS) $(RESMGR_LIBS)
    
    libepson2_la_SOURCES = epson2.c epson2.h epson2_scsi.c epson2_scsi.h epson2_usb.c epson2_net.c epson2_net.h epson2-io.c epson2-io.h epson2-commands.c epson2-commands.h epson2-ops.c epson2-ops.h epson2-cct.c
    
    libepson2_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epson2
    
    nodist_libsane_epson2_la_SOURCES = epson2-s.c
    libsane_epson2_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epson2
    libsane_epson2_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_epson2_la_LIBADD = $(COMMON_LIBS) \
        libepson2.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_scsi.lo \
        ../sanei/sanei_pio.lo \
        ../sanei/sanei_tcp.lo \
        ../sanei/sanei_udp.lo \
    
        ../sanei/sanei_directio.lo \
    
        $(SCSI_LIBS) $(USB_LIBS) $(SOCKET_LIBS) $(MATH_LIB) $(RESMGR_LIBS)
    
    libepsonds_la_SOURCES = epsonds.c epsonds.h epsonds-usb.c epsonds-usb.h epsonds-io.c epsonds-io.h \
    
    		epsonds-cmd.c epsonds-cmd.h epsonds-ops.c epsonds-ops.h epsonds-jpeg.c epsonds-jpeg.h \
    		epsonds-net.c epsonds-net.h
    
    libepsonds_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epsonds
    
    nodist_libsane_epsonds_la_SOURCES = epsonds-s.c
    libsane_epsonds_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=epsonds
    libsane_epsonds_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    Ralph Little's avatar
    Ralph Little committed
    
    if have_libavahi
    libsane_epsonds_la_LIBADD = $(COMMON_LIBS) libepsonds.la ../sanei/sanei_init_debug.lo ../sanei/sanei_constrain_value.lo \
    				../sanei/sanei_config.lo ../sanei/sanei_config2.lo sane_strstatus.lo \
    				../sanei/sanei_usb.lo ../sanei/sanei_scsi.lo \
    				../sanei/sanei_tcp.lo ../sanei/sanei_udp.lo \
    				$(SANEI_SANEI_JPEG_LO) $(JPEG_LIBS) $(USB_LIBS) $(MATH_LIB) $(RESMGR_LIBS) $(SOCKET_LIBS) $(AVAHI_LIBS)
    else
    
    libsane_epsonds_la_LIBADD = $(COMMON_LIBS) libepsonds.la ../sanei/sanei_init_debug.lo ../sanei/sanei_constrain_value.lo \
    				../sanei/sanei_config.lo ../sanei/sanei_config2.lo sane_strstatus.lo \
    				../sanei/sanei_usb.lo ../sanei/sanei_scsi.lo \
    
    				../sanei/sanei_tcp.lo ../sanei/sanei_udp.lo \
    				$(SANEI_SANEI_JPEG_LO) $(JPEG_LIBS) $(USB_LIBS) $(MATH_LIB) $(RESMGR_LIBS) $(SOCKET_LIBS)
    
    Ralph Little's avatar
    Ralph Little committed
    endif
    
    EXTRA_DIST += epsonds.conf.in
    
    
    libfujitsu_la_SOURCES = fujitsu.c fujitsu.h fujitsu-scsi.h
    libfujitsu_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=fujitsu
    
    nodist_libsane_fujitsu_la_SOURCES = fujitsu-s.c
    libsane_fujitsu_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=fujitsu
    libsane_fujitsu_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_fujitsu_la_LIBADD = $(COMMON_LIBS) \
        libfujitsu.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_scsi.lo \
        ../sanei/sanei_magic.lo \
        $(MATH_LIB) $(SCSI_LIBS) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += fujitsu.conf.in
    
    
    libgenesys_la_SOURCES = genesys/genesys.cpp genesys/genesys.h \
        genesys/calibration.h \
        genesys/command_set.h \
    
        genesys/command_set_common.h genesys/command_set_common.cpp \
    
        genesys/device.h genesys/device.cpp \
    
        genesys/error.h genesys/error.cpp \
    
        genesys/gl646.cpp genesys/gl646.h genesys/gl646_registers.h \
        genesys/gl124.cpp genesys/gl124.h genesys/gl124_registers.h \
        genesys/gl841.cpp genesys/gl841.h genesys/gl841_registers.h \
    
        genesys/gl842.cpp genesys/gl842.h genesys/gl842_registers.h \
    
        genesys/gl843.cpp genesys/gl843.h genesys/gl843_registers.h \
        genesys/gl846.cpp genesys/gl846.h genesys/gl846_registers.h \
        genesys/gl847.cpp genesys/gl847.h genesys/gl847_registers.h \
        genesys/row_buffer.h \
        genesys/image_buffer.h genesys/image_buffer.cpp \
        genesys/image_pipeline.h genesys/image_pipeline.cpp \
        genesys/image_pixel.h genesys/image_pixel.cpp \
        genesys/image.h genesys/image.cpp \
    
        genesys/motor.h genesys/motor.cpp \
    
        genesys/register_cache.h \
        genesys/scanner_interface.h genesys/scanner_interface.cpp \
        genesys/scanner_interface_usb.h genesys/scanner_interface_usb.cpp \
    
        genesys/sensor.h genesys/sensor.cpp \
        genesys/settings.h genesys/settings.cpp \
    
        genesys/static_init.h genesys/static_init.cpp \
    
        genesys/status.h genesys/status.cpp \
    
        genesys/tables_frontend.cpp \
        genesys/tables_gpo.cpp \
    
        genesys/tables_memory_layout.cpp \
    
        genesys/tables_model.cpp \
        genesys/tables_motor.cpp \
        genesys/tables_sensor.cpp \
    
        genesys/test_scanner_interface.h genesys/test_scanner_interface.cpp \
    
        genesys/test_settings.h genesys/test_settings.cpp \
    
        genesys/test_usb_device.h genesys/test_usb_device.cpp \
        genesys/usb_device.h genesys/usb_device.cpp \
    
    libgenesys_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=genesys
    
    nodist_libsane_genesys_la_SOURCES = genesys-s.cpp
    
    libsane_genesys_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=genesys
    libsane_genesys_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_genesys_la_LIBADD = $(COMMON_LIBS) libgenesys.la \
    
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
         ../sanei/sanei_usb.lo \
    
        $(MATH_LIB) $(TIFF_LIBS) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += genesys.conf.in
    
    libgphoto2_i_la_SOURCES = gphoto2.c gphoto2.h
    
    libgphoto2_i_la_CPPFLAGS = $(AM_CPPFLAGS) $(GPHOTO2_CPPFLAGS) -DBACKEND_NAME=gphoto2
    
    nodist_libsane_gphoto2_la_SOURCES = gphoto2-s.c
    
    libsane_gphoto2_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=gphoto2
    libsane_gphoto2_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_gphoto2_la_LIBADD = $(GPHOTO2_LDFLAGS) $(COMMON_LIBS) \
        libgphoto2_i.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        $(SANEI_SANEI_JPEG_LO) $(GPHOTO2_LIBS) $(JPEG_LIBS)
    
    EXTRA_DIST += gphoto2.conf.in
    
    libgt68xx_la_SOURCES = gt68xx.c gt68xx.h
    libgt68xx_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=gt68xx
    
    
    nodist_libsane_gt68xx_la_SOURCES = gt68xx-s.c
    
    libsane_gt68xx_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=gt68xx
    libsane_gt68xx_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_gt68xx_la_LIBADD = $(COMMON_LIBS) \
        libgt68xx.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        $(MATH_LIB) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += gt68xx.conf.in
    
    # TODO: Why are this distributed but not compiled?
    
    EXTRA_DIST += gt68xx_devices.c gt68xx_generic.c gt68xx_generic.h gt68xx_gt6801.c gt68xx_gt6801.h gt68xx_gt6816.c gt68xx_gt6816.h gt68xx_high.c gt68xx_high.h gt68xx_low.c gt68xx_low.h gt68xx_mid.c gt68xx_mid.h gt68xx_shm_channel.c gt68xx_shm_channel.h
    
    libhp_la_SOURCES = hp.c hp.h hp-accessor.c hp-accessor.h hp-device.c hp-device.h hp-handle.c hp-handle.h hp-hpmem.c hp-option.c hp-option.h hp-scl.c hp-scl.h hp-scsi.h
    libhp_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp
    
    nodist_libsane_hp_la_SOURCES = hp-s.c
    libsane_hp_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp
    libsane_hp_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hp_la_LIBADD = $(COMMON_LIBS) \
        libhp.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_scsi.lo \
        ../sanei/sanei_pio.lo \
        ../sanei/sanei_thread.lo \
    
        ../sanei/sanei_directio.lo \
    
        $(SCSI_LIBS) $(USB_LIBS) $(SANEI_THREAD_LIBS) $(RESMGR_LIBS)
    
    # TODO: These should be moved to ../docs/hp; don't belong here.
    
    EXTRA_DIST += hp.README hp.TODO
    
    libhp3500_la_SOURCES = hp3500.c
    libhp3500_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp3500
    
    nodist_libsane_hp3500_la_SOURCES = hp3500-s.c
    libsane_hp3500_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp3500
    libsane_hp3500_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hp3500_la_LIBADD = $(COMMON_LIBS) \
        libhp3500.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_thread.lo \
        $(MATH_LIB) $(USB_LIBS) $(SANEI_THREAD_LIBS) $(RESMGR_LIBS)
    
    
    libhp3900_la_SOURCES = hp3900.c
    libhp3900_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp3900
    
    nodist_libsane_hp3900_la_SOURCES = hp3900-s.c
    libsane_hp3900_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp3900
    libsane_hp3900_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hp3900_la_LIBADD = $(COMMON_LIBS) \
        libhp3900.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        $(MATH_LIB) $(TIFF_LIBS) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += hp3900.conf.in
    
    # TODO: Why are these distributed but not compiled?
    
    EXTRA_DIST += hp3900_config.c hp3900_debug.c hp3900_rts8822.c hp3900_sane.c hp3900_types.c hp3900_usb.c
    
    libhp4200_la_SOURCES = hp4200.c hp4200.h
    libhp4200_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp4200
    
    
    nodist_libsane_hp4200_la_SOURCES = hp4200-s.c
    
    libsane_hp4200_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp4200
    libsane_hp4200_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hp4200_la_LIBADD = $(COMMON_LIBS) \
        libhp4200.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        ../sanei/sanei_pv8630.lo \
        $(MATH_LIB) $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += hp4200.conf.in
    
    # TODO: Why are these distributed but not compiled?
    
    EXTRA_DIST += hp4200_lm9830.c hp4200_lm9830.h
    
    libhp5400_la_SOURCES = hp5400.c hp5400.h
    libhp5400_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp5400
    
    nodist_libsane_hp5400_la_SOURCES = hp5400-s.c
    libsane_hp5400_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp5400
    libsane_hp5400_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hp5400_la_LIBADD = $(COMMON_LIBS) \
        libhp5400.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        $(USB_LIBS) $(RESMGR_LIBS)
    
    EXTRA_DIST += hp5400.conf.in
    
    # TODO: Why are these distributed but not compiled?
    
    EXTRA_DIST += hp5400_debug.c hp5400_debug.h hp5400_internal.c hp5400_internal.h hp5400_sane.c hp5400_sanei.c hp5400_sanei.h hp5400_xfer.h
    
    libhp5590_la_SOURCES = hp5590.c
    libhp5590_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp5590
    
    nodist_libsane_hp5590_la_SOURCES = hp5590-s.c
    libsane_hp5590_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hp5590
    libsane_hp5590_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hp5590_la_LIBADD = $(COMMON_LIBS) \
        libhp5590.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        $(USB_LIBS) $(RESMGR_LIBS)
    
    # TODO: Why are these distributed but not compiled?
    
    EXTRA_DIST += hp5590_cmds.c hp5590_cmds.h hp5590_low.c hp5590_low.h
    
    libhpljm1005_la_SOURCES = hpljm1005.c
    libhpljm1005_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hpljm1005
    
    nodist_libsane_hpljm1005_la_SOURCES = hpljm1005-s.c
    libsane_hpljm1005_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hpljm1005
    libsane_hpljm1005_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hpljm1005_la_LIBADD = $(COMMON_LIBS) \
        libhpljm1005.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        ../sanei/sanei_usb.lo \
        $(MATH_LIB) $(USB_LIBS) $(RESMGR_LIBS)
    
    
    libhpsj5s_la_SOURCES = hpsj5s.c hpsj5s.h
    libhpsj5s_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hpsj5s
    
    
    nodist_libsane_hpsj5s_la_SOURCES = hpsj5s-s.c
    
    libsane_hpsj5s_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hpsj5s
    libsane_hpsj5s_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hpsj5s_la_LIBADD = $(COMMON_LIBS) \
        libhpsj5s.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        sane_strstatus.lo \
        $(IEEE1284_LIBS)
    
    EXTRA_DIST += hpsj5s.conf.in
    
    libhs2p_la_SOURCES = hs2p.c hs2p.h hs2p-saneopts.h
    libhs2p_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hs2p
    
    
    nodist_libsane_hs2p_la_SOURCES = hs2p-s.c
    
    libsane_hs2p_la_CPPFLAGS = $(AM_CPPFLAGS) -DBACKEND_NAME=hs2p
    libsane_hs2p_la_LDFLAGS = $(DIST_SANELIBS_LDFLAGS)
    
    libsane_hs2p_la_LIBADD = $(COMMON_LIBS) \
        libhs2p.la \
        ../sanei/sanei_init_debug.lo \
        ../sanei/sanei_constrain_value.lo \
        ../sanei/sanei_config.lo \
        ../sanei/sanei_config2.lo \
        sane_strstatus.lo \