# Makefile.in generated by automake 1.15 from Makefile.am.
# @configure_input@

# Copyright (C) 1994-2014 Free Software Foundation, Inc.

# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

@SET_MAKE@

VPATH = @srcdir@
am__is_gnu_make = { \
  if test -z '$(MAKELEVEL)'; then \
    false; \
  elif test -n '$(MAKE_HOST)'; then \
    true; \
  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
    true; \
  else \
    false; \
  fi; \
}
am__make_running_with_option = \
  case $${target_option-} in \
      ?) ;; \
      *) echo "am__make_running_with_option: internal error: invalid" \
              "target option '$${target_option-}' specified" >&2; \
         exit 1;; \
  esac; \
  has_opt=no; \
  sane_makeflags=$$MAKEFLAGS; \
  if $(am__is_gnu_make); then \
    sane_makeflags=$$MFLAGS; \
  else \
    case $$MAKEFLAGS in \
      *\\[\ \	]*) \
        bs=\\; \
        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
    esac; \
  fi; \
  skip_next=no; \
  strip_trailopt () \
  { \
    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
  }; \
  for flg in $$sane_makeflags; do \
    test $$skip_next = yes && { skip_next=no; continue; }; \
    case $$flg in \
      *=*|--*) continue;; \
        -*I) strip_trailopt 'I'; skip_next=yes;; \
      -*I?*) strip_trailopt 'I';; \
        -*O) strip_trailopt 'O'; skip_next=yes;; \
      -*O?*) strip_trailopt 'O';; \
        -*l) strip_trailopt 'l'; skip_next=yes;; \
      -*l?*) strip_trailopt 'l';; \
      -[dEDm]) skip_next=yes;; \
      -[JT]) skip_next=yes;; \
    esac; \
    case $$flg in \
      *$$target_option*) has_opt=yes; break;; \
    esac; \
  done; \
  test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
bin_PROGRAMS = sg_compare_and_write$(EXEEXT) sg_decode_sense$(EXEEXT) \
	sg_format$(EXEEXT) sg_get_config$(EXEEXT) \
	sg_get_lba_status$(EXEEXT) sg_ident$(EXEEXT) sg_inq$(EXEEXT) \
	sg_logs$(EXEEXT) sg_luns$(EXEEXT) sg_modes$(EXEEXT) \
	sg_opcodes$(EXEEXT) sg_persist$(EXEEXT) sg_prevent$(EXEEXT) \
	sg_raw$(EXEEXT) sg_rdac$(EXEEXT) sg_read_attr$(EXEEXT) \
	sg_read_block_limits$(EXEEXT) sg_read_buffer$(EXEEXT) \
	sg_read_long$(EXEEXT) sg_readcap$(EXEEXT) sg_reassign$(EXEEXT) \
	sg_referrals$(EXEEXT) sg_rep_zones$(EXEEXT) \
	sg_requests$(EXEEXT) sg_reset_wp$(EXEEXT) sg_rmsn$(EXEEXT) \
	sg_rtpg$(EXEEXT) sg_safte$(EXEEXT) sg_sanitize$(EXEEXT) \
	sg_sat_identify$(EXEEXT) sg_sat_phy_event$(EXEEXT) \
	sg_sat_read_gplog$(EXEEXT) sg_sat_set_features$(EXEEXT) \
	sg_senddiag$(EXEEXT) sg_ses$(EXEEXT) sg_ses_microcode$(EXEEXT) \
	sg_start$(EXEEXT) sg_stpg$(EXEEXT) sg_sync$(EXEEXT) \
	sg_timestamp$(EXEEXT) sg_turs$(EXEEXT) sg_unmap$(EXEEXT) \
	sg_verify$(EXEEXT) sg_vpd$(EXEEXT) sg_wr_mode$(EXEEXT) \
	sg_write_buffer$(EXEEXT) sg_write_long$(EXEEXT) \
	sg_write_same$(EXEEXT) sg_write_verify$(EXEEXT) \
	sg_zone$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
	$(am__EXEEXT_3)
@OS_LINUX_TRUE@am__append_1 = \
@OS_LINUX_TRUE@	sg_copy_results sg_dd sg_emc_trespass sg_map sg_map26 sg_rbuf \
@OS_LINUX_TRUE@	sg_read sg_reset sg_scan sg_test_rwbuf sg_xcopy sginfo sgm_dd sgp_dd

@OS_LINUX_TRUE@am__append_2 = sg_scan_linux.c
@OS_WIN32_MINGW_TRUE@am__append_3 = sg_scan
@OS_WIN32_MINGW_TRUE@am__append_4 = sg_scan_win32.c
@OS_WIN32_CYGWIN_TRUE@am__append_5 = sg_scan
@OS_WIN32_CYGWIN_TRUE@am__append_6 = sg_scan_win32.c
subdir = src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
@OS_LINUX_TRUE@am__EXEEXT_1 = sg_copy_results$(EXEEXT) sg_dd$(EXEEXT) \
@OS_LINUX_TRUE@	sg_emc_trespass$(EXEEXT) sg_map$(EXEEXT) \
@OS_LINUX_TRUE@	sg_map26$(EXEEXT) sg_rbuf$(EXEEXT) \
@OS_LINUX_TRUE@	sg_read$(EXEEXT) sg_reset$(EXEEXT) \
@OS_LINUX_TRUE@	sg_scan$(EXEEXT) sg_test_rwbuf$(EXEEXT) \
@OS_LINUX_TRUE@	sg_xcopy$(EXEEXT) sginfo$(EXEEXT) \
@OS_LINUX_TRUE@	sgm_dd$(EXEEXT) sgp_dd$(EXEEXT)
@OS_WIN32_MINGW_TRUE@am__EXEEXT_2 = sg_scan$(EXEEXT)
@OS_WIN32_CYGWIN_TRUE@am__EXEEXT_3 = sg_scan$(EXEEXT)
am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
sg_compare_and_write_SOURCES = sg_compare_and_write.c
sg_compare_and_write_OBJECTS = sg_compare_and_write.$(OBJEXT)
sg_compare_and_write_DEPENDENCIES = ../lib/libsgutils2.la
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 = 
sg_copy_results_SOURCES = sg_copy_results.c
sg_copy_results_OBJECTS = sg_copy_results.$(OBJEXT)
sg_copy_results_DEPENDENCIES = ../lib/libsgutils2.la
sg_dd_SOURCES = sg_dd.c
sg_dd_OBJECTS = sg_dd.$(OBJEXT)
sg_dd_DEPENDENCIES = ../lib/libsgutils2.la
sg_decode_sense_SOURCES = sg_decode_sense.c
sg_decode_sense_OBJECTS = sg_decode_sense.$(OBJEXT)
sg_decode_sense_DEPENDENCIES = ../lib/libsgutils2.la
sg_emc_trespass_SOURCES = sg_emc_trespass.c
sg_emc_trespass_OBJECTS = sg_emc_trespass.$(OBJEXT)
sg_emc_trespass_DEPENDENCIES = ../lib/libsgutils2.la
sg_format_SOURCES = sg_format.c
sg_format_OBJECTS = sg_format.$(OBJEXT)
sg_format_DEPENDENCIES = ../lib/libsgutils2.la
sg_get_config_SOURCES = sg_get_config.c
sg_get_config_OBJECTS = sg_get_config.$(OBJEXT)
sg_get_config_DEPENDENCIES = ../lib/libsgutils2.la
sg_get_lba_status_SOURCES = sg_get_lba_status.c
sg_get_lba_status_OBJECTS = sg_get_lba_status.$(OBJEXT)
sg_get_lba_status_DEPENDENCIES = ../lib/libsgutils2.la
sg_ident_SOURCES = sg_ident.c
sg_ident_OBJECTS = sg_ident.$(OBJEXT)
sg_ident_DEPENDENCIES = ../lib/libsgutils2.la
am_sg_inq_OBJECTS = sg_inq.$(OBJEXT) sg_inq_data.$(OBJEXT)
sg_inq_OBJECTS = $(am_sg_inq_OBJECTS)
sg_inq_DEPENDENCIES = ../lib/libsgutils2.la
sg_logs_SOURCES = sg_logs.c
sg_logs_OBJECTS = sg_logs.$(OBJEXT)
sg_logs_DEPENDENCIES = ../lib/libsgutils2.la
sg_luns_SOURCES = sg_luns.c
sg_luns_OBJECTS = sg_luns.$(OBJEXT)
sg_luns_DEPENDENCIES = ../lib/libsgutils2.la
sg_map_SOURCES = sg_map.c
sg_map_OBJECTS = sg_map.$(OBJEXT)
sg_map_DEPENDENCIES = ../lib/libsgutils2.la
sg_map26_SOURCES = sg_map26.c
sg_map26_OBJECTS = sg_map26.$(OBJEXT)
sg_map26_DEPENDENCIES =
sg_modes_SOURCES = sg_modes.c
sg_modes_OBJECTS = sg_modes.$(OBJEXT)
sg_modes_DEPENDENCIES = ../lib/libsgutils2.la
sg_opcodes_SOURCES = sg_opcodes.c
sg_opcodes_OBJECTS = sg_opcodes.$(OBJEXT)
sg_opcodes_DEPENDENCIES = ../lib/libsgutils2.la
sg_persist_SOURCES = sg_persist.c
sg_persist_OBJECTS = sg_persist.$(OBJEXT)
sg_persist_DEPENDENCIES = ../lib/libsgutils2.la
sg_prevent_SOURCES = sg_prevent.c
sg_prevent_OBJECTS = sg_prevent.$(OBJEXT)
sg_prevent_DEPENDENCIES = ../lib/libsgutils2.la
sg_raw_SOURCES = sg_raw.c
sg_raw_OBJECTS = sg_raw.$(OBJEXT)
sg_raw_DEPENDENCIES = ../lib/libsgutils2.la
sg_rbuf_SOURCES = sg_rbuf.c
sg_rbuf_OBJECTS = sg_rbuf.$(OBJEXT)
sg_rbuf_DEPENDENCIES = ../lib/libsgutils2.la
sg_rdac_SOURCES = sg_rdac.c
sg_rdac_OBJECTS = sg_rdac.$(OBJEXT)
sg_rdac_DEPENDENCIES = ../lib/libsgutils2.la
sg_read_SOURCES = sg_read.c
sg_read_OBJECTS = sg_read.$(OBJEXT)
sg_read_DEPENDENCIES = ../lib/libsgutils2.la
sg_read_attr_SOURCES = sg_read_attr.c
sg_read_attr_OBJECTS = sg_read_attr.$(OBJEXT)
sg_read_attr_DEPENDENCIES = ../lib/libsgutils2.la
sg_read_block_limits_SOURCES = sg_read_block_limits.c
sg_read_block_limits_OBJECTS = sg_read_block_limits.$(OBJEXT)
sg_read_block_limits_DEPENDENCIES = ../lib/libsgutils2.la
sg_read_buffer_SOURCES = sg_read_buffer.c
sg_read_buffer_OBJECTS = sg_read_buffer.$(OBJEXT)
sg_read_buffer_DEPENDENCIES = ../lib/libsgutils2.la
sg_read_long_SOURCES = sg_read_long.c
sg_read_long_OBJECTS = sg_read_long.$(OBJEXT)
sg_read_long_DEPENDENCIES = ../lib/libsgutils2.la
sg_readcap_SOURCES = sg_readcap.c
sg_readcap_OBJECTS = sg_readcap.$(OBJEXT)
sg_readcap_DEPENDENCIES = ../lib/libsgutils2.la
sg_reassign_SOURCES = sg_reassign.c
sg_reassign_OBJECTS = sg_reassign.$(OBJEXT)
sg_reassign_DEPENDENCIES = ../lib/libsgutils2.la
sg_referrals_SOURCES = sg_referrals.c
sg_referrals_OBJECTS = sg_referrals.$(OBJEXT)
sg_referrals_DEPENDENCIES = ../lib/libsgutils2.la
sg_rep_zones_SOURCES = sg_rep_zones.c
sg_rep_zones_OBJECTS = sg_rep_zones.$(OBJEXT)
sg_rep_zones_DEPENDENCIES = ../lib/libsgutils2.la
sg_requests_SOURCES = sg_requests.c
sg_requests_OBJECTS = sg_requests.$(OBJEXT)
sg_requests_DEPENDENCIES = ../lib/libsgutils2.la
sg_reset_SOURCES = sg_reset.c
sg_reset_OBJECTS = sg_reset.$(OBJEXT)
sg_reset_DEPENDENCIES =
sg_reset_wp_SOURCES = sg_reset_wp.c
sg_reset_wp_OBJECTS = sg_reset_wp.$(OBJEXT)
sg_reset_wp_DEPENDENCIES = ../lib/libsgutils2.la
sg_rmsn_SOURCES = sg_rmsn.c
sg_rmsn_OBJECTS = sg_rmsn.$(OBJEXT)
sg_rmsn_DEPENDENCIES = ../lib/libsgutils2.la
sg_rtpg_SOURCES = sg_rtpg.c
sg_rtpg_OBJECTS = sg_rtpg.$(OBJEXT)
sg_rtpg_DEPENDENCIES = ../lib/libsgutils2.la
sg_safte_SOURCES = sg_safte.c
sg_safte_OBJECTS = sg_safte.$(OBJEXT)
sg_safte_DEPENDENCIES = ../lib/libsgutils2.la
sg_sanitize_SOURCES = sg_sanitize.c
sg_sanitize_OBJECTS = sg_sanitize.$(OBJEXT)
sg_sanitize_DEPENDENCIES = ../lib/libsgutils2.la
sg_sat_identify_SOURCES = sg_sat_identify.c
sg_sat_identify_OBJECTS = sg_sat_identify.$(OBJEXT)
sg_sat_identify_DEPENDENCIES = ../lib/libsgutils2.la
sg_sat_phy_event_SOURCES = sg_sat_phy_event.c
sg_sat_phy_event_OBJECTS = sg_sat_phy_event.$(OBJEXT)
sg_sat_phy_event_DEPENDENCIES = ../lib/libsgutils2.la
sg_sat_read_gplog_SOURCES = sg_sat_read_gplog.c
sg_sat_read_gplog_OBJECTS = sg_sat_read_gplog.$(OBJEXT)
sg_sat_read_gplog_DEPENDENCIES = ../lib/libsgutils2.la
sg_sat_set_features_SOURCES = sg_sat_set_features.c
sg_sat_set_features_OBJECTS = sg_sat_set_features.$(OBJEXT)
sg_sat_set_features_DEPENDENCIES = ../lib/libsgutils2.la
am__sg_scan_SOURCES_DIST = sg_scan_linux.c sg_scan_win32.c
@OS_LINUX_TRUE@am__objects_1 = sg_scan_linux.$(OBJEXT)
@OS_WIN32_MINGW_TRUE@am__objects_2 = sg_scan_win32.$(OBJEXT)
@OS_WIN32_CYGWIN_TRUE@am__objects_3 = sg_scan_win32.$(OBJEXT)
am_sg_scan_OBJECTS = $(am__objects_1) $(am__objects_2) \
	$(am__objects_3)
sg_scan_OBJECTS = $(am_sg_scan_OBJECTS)
sg_scan_DEPENDENCIES = ../lib/libsgutils2.la
sg_senddiag_SOURCES = sg_senddiag.c
sg_senddiag_OBJECTS = sg_senddiag.$(OBJEXT)
sg_senddiag_DEPENDENCIES = ../lib/libsgutils2.la
sg_ses_SOURCES = sg_ses.c
sg_ses_OBJECTS = sg_ses.$(OBJEXT)
sg_ses_DEPENDENCIES = ../lib/libsgutils2.la
sg_ses_microcode_SOURCES = sg_ses_microcode.c
sg_ses_microcode_OBJECTS = sg_ses_microcode.$(OBJEXT)
sg_ses_microcode_DEPENDENCIES = ../lib/libsgutils2.la
sg_start_SOURCES = sg_start.c
sg_start_OBJECTS = sg_start.$(OBJEXT)
sg_start_DEPENDENCIES = ../lib/libsgutils2.la
sg_stpg_SOURCES = sg_stpg.c
sg_stpg_OBJECTS = sg_stpg.$(OBJEXT)
sg_stpg_DEPENDENCIES = ../lib/libsgutils2.la
sg_sync_SOURCES = sg_sync.c
sg_sync_OBJECTS = sg_sync.$(OBJEXT)
sg_sync_DEPENDENCIES = ../lib/libsgutils2.la
sg_test_rwbuf_SOURCES = sg_test_rwbuf.c
sg_test_rwbuf_OBJECTS = sg_test_rwbuf.$(OBJEXT)
sg_test_rwbuf_DEPENDENCIES = ../lib/libsgutils2.la
sg_timestamp_SOURCES = sg_timestamp.c
sg_timestamp_OBJECTS = sg_timestamp.$(OBJEXT)
sg_timestamp_DEPENDENCIES = ../lib/libsgutils2.la
sg_turs_SOURCES = sg_turs.c
sg_turs_OBJECTS = sg_turs.$(OBJEXT)
sg_turs_DEPENDENCIES = ../lib/libsgutils2.la
sg_unmap_SOURCES = sg_unmap.c
sg_unmap_OBJECTS = sg_unmap.$(OBJEXT)
sg_unmap_DEPENDENCIES = ../lib/libsgutils2.la
sg_verify_SOURCES = sg_verify.c
sg_verify_OBJECTS = sg_verify.$(OBJEXT)
sg_verify_DEPENDENCIES = ../lib/libsgutils2.la
am_sg_vpd_OBJECTS = sg_vpd.$(OBJEXT) sg_vpd_vendor.$(OBJEXT)
sg_vpd_OBJECTS = $(am_sg_vpd_OBJECTS)
sg_vpd_DEPENDENCIES = ../lib/libsgutils2.la
sg_wr_mode_SOURCES = sg_wr_mode.c
sg_wr_mode_OBJECTS = sg_wr_mode.$(OBJEXT)
sg_wr_mode_DEPENDENCIES = ../lib/libsgutils2.la
sg_write_buffer_SOURCES = sg_write_buffer.c
sg_write_buffer_OBJECTS = sg_write_buffer.$(OBJEXT)
sg_write_buffer_DEPENDENCIES = ../lib/libsgutils2.la
sg_write_long_SOURCES = sg_write_long.c
sg_write_long_OBJECTS = sg_write_long.$(OBJEXT)
sg_write_long_DEPENDENCIES = ../lib/libsgutils2.la
sg_write_same_SOURCES = sg_write_same.c
sg_write_same_OBJECTS = sg_write_same.$(OBJEXT)
sg_write_same_DEPENDENCIES = ../lib/libsgutils2.la
sg_write_verify_SOURCES = sg_write_verify.c
sg_write_verify_OBJECTS = sg_write_verify.$(OBJEXT)
sg_write_verify_DEPENDENCIES = ../lib/libsgutils2.la
sg_xcopy_SOURCES = sg_xcopy.c
sg_xcopy_OBJECTS = sg_xcopy.$(OBJEXT)
sg_xcopy_DEPENDENCIES = ../lib/libsgutils2.la
sg_zone_SOURCES = sg_zone.c
sg_zone_OBJECTS = sg_zone.$(OBJEXT)
sg_zone_DEPENDENCIES = ../lib/libsgutils2.la
sginfo_SOURCES = sginfo.c
sginfo_OBJECTS = sginfo.$(OBJEXT)
sginfo_DEPENDENCIES = ../lib/libsgutils2.la
sgm_dd_SOURCES = sgm_dd.c
sgm_dd_OBJECTS = sgm_dd.$(OBJEXT)
sgm_dd_DEPENDENCIES = ../lib/libsgutils2.la
sgp_dd_SOURCES = sgp_dd.c
sgp_dd_OBJECTS = sgp_dd.$(OBJEXT)
sgp_dd_DEPENDENCIES = ../lib/libsgutils2.la
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo "  GEN     " $@;
am__v_GEN_1 = 
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 = 
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
	$(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_@AM_V@)
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
am__v_CC_0 = @echo "  CC      " $@;
am__v_CC_1 = 
CCLD = $(CC)
LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo "  CCLD    " $@;
am__v_CCLD_1 = 
SOURCES = sg_compare_and_write.c sg_copy_results.c sg_dd.c \
	sg_decode_sense.c sg_emc_trespass.c sg_format.c \
	sg_get_config.c sg_get_lba_status.c sg_ident.c \
	$(sg_inq_SOURCES) sg_logs.c sg_luns.c sg_map.c sg_map26.c \
	sg_modes.c sg_opcodes.c sg_persist.c sg_prevent.c sg_raw.c \
	sg_rbuf.c sg_rdac.c sg_read.c sg_read_attr.c \
	sg_read_block_limits.c sg_read_buffer.c sg_read_long.c \
	sg_readcap.c sg_reassign.c sg_referrals.c sg_rep_zones.c \
	sg_requests.c sg_reset.c sg_reset_wp.c sg_rmsn.c sg_rtpg.c \
	sg_safte.c sg_sanitize.c sg_sat_identify.c sg_sat_phy_event.c \
	sg_sat_read_gplog.c sg_sat_set_features.c $(sg_scan_SOURCES) \
	sg_senddiag.c sg_ses.c sg_ses_microcode.c sg_start.c sg_stpg.c \
	sg_sync.c sg_test_rwbuf.c sg_timestamp.c sg_turs.c sg_unmap.c \
	sg_verify.c $(sg_vpd_SOURCES) sg_wr_mode.c sg_write_buffer.c \
	sg_write_long.c sg_write_same.c sg_write_verify.c sg_xcopy.c \
	sg_zone.c sginfo.c sgm_dd.c sgp_dd.c
DIST_SOURCES = sg_compare_and_write.c sg_copy_results.c sg_dd.c \
	sg_decode_sense.c sg_emc_trespass.c sg_format.c \
	sg_get_config.c sg_get_lba_status.c sg_ident.c \
	$(sg_inq_SOURCES) sg_logs.c sg_luns.c sg_map.c sg_map26.c \
	sg_modes.c sg_opcodes.c sg_persist.c sg_prevent.c sg_raw.c \
	sg_rbuf.c sg_rdac.c sg_read.c sg_read_attr.c \
	sg_read_block_limits.c sg_read_buffer.c sg_read_long.c \
	sg_readcap.c sg_reassign.c sg_referrals.c sg_rep_zones.c \
	sg_requests.c sg_reset.c sg_reset_wp.c sg_rmsn.c sg_rtpg.c \
	sg_safte.c sg_sanitize.c sg_sat_identify.c sg_sat_phy_event.c \
	sg_sat_read_gplog.c sg_sat_set_features.c \
	$(am__sg_scan_SOURCES_DIST) sg_senddiag.c sg_ses.c \
	sg_ses_microcode.c sg_start.c sg_stpg.c sg_sync.c \
	sg_test_rwbuf.c sg_timestamp.c sg_turs.c sg_unmap.c \
	sg_verify.c $(sg_vpd_SOURCES) sg_wr_mode.c sg_write_buffer.c \
	sg_write_long.c sg_write_same.c sg_write_verify.c sg_xcopy.c \
	sg_zone.c sginfo.c sgm_dd.c sgp_dd.c
am__can_run_installinfo = \
  case $$AM_UPDATE_INFO_DIR in \
    n|no|NO) false;; \
    *) (install-info --version) >/dev/null 2>&1;; \
  esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates.  Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
  BEGIN { nonempty = 0; } \
  { items[$$0] = 1; nonempty = 1; } \
  END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique.  This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
  list='$(am__tagged_files)'; \
  unique=`for i in $$list; do \
    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GETOPT_O_FILES = @GETOPT_O_FILES@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
os_cflags = @os_cflags@
os_libs = @os_libs@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
sg_scan_SOURCES = $(am__append_2) $(am__append_4) $(am__append_6)

# For C++/clang testing

# -std=<s> can be c99, c11, gnu11, etc. Default is gnu89 (gnu90 is the same)
# -Wall is no longer all warnings. Add -W (since renamed to -Wextra) for more
AM_CPPFLAGS = -iquote ${top_srcdir}/include -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
AM_CFLAGS = -Wall -W @os_cflags@
# AM_CFLAGS = -Wall -W @os_cflags@ -pedantic -std=c11
# AM_CFLAGS = -Wall -W @os_cflags@ -pedantic -std=c++11
sg_compare_and_write_LDADD = ../lib/libsgutils2.la @os_libs@
sg_copy_results_LDADD = ../lib/libsgutils2.la @os_libs@
sg_dd_LDADD = ../lib/libsgutils2.la @os_libs@
sg_decode_sense_LDADD = ../lib/libsgutils2.la @os_libs@
sg_emc_trespass_LDADD = ../lib/libsgutils2.la @os_libs@
sg_format_LDADD = ../lib/libsgutils2.la @os_libs@
sg_get_config_LDADD = ../lib/libsgutils2.la @os_libs@
sg_get_lba_status_LDADD = ../lib/libsgutils2.la @os_libs@
sg_ident_LDADD = ../lib/libsgutils2.la @os_libs@
sginfo_LDADD = ../lib/libsgutils2.la @os_libs@
sg_inq_SOURCES = sg_inq.c sg_inq_data.c
sg_inq_LDADD = ../lib/libsgutils2.la @os_libs@
sg_logs_LDADD = ../lib/libsgutils2.la @os_libs@
sg_luns_LDADD = ../lib/libsgutils2.la @os_libs@
sg_map26_LDADD = @os_libs@
sg_map_LDADD = ../lib/libsgutils2.la @os_libs@
sgm_dd_LDADD = ../lib/libsgutils2.la @os_libs@
sg_modes_LDADD = ../lib/libsgutils2.la @os_libs@
sg_opcodes_LDADD = ../lib/libsgutils2.la @os_libs@
sgp_dd_LDADD = ../lib/libsgutils2.la @os_libs@ -lpthread
sg_persist_LDADD = ../lib/libsgutils2.la @os_libs@
sg_prevent_LDADD = ../lib/libsgutils2.la @os_libs@
sg_raw_LDADD = ../lib/libsgutils2.la @os_libs@
sg_rbuf_LDADD = ../lib/libsgutils2.la @os_libs@
sg_rdac_LDADD = ../lib/libsgutils2.la @os_libs@
sg_read_LDADD = ../lib/libsgutils2.la @os_libs@
sg_read_attr_LDADD = ../lib/libsgutils2.la @os_libs@
sg_readcap_LDADD = ../lib/libsgutils2.la @os_libs@
sg_read_block_limits_LDADD = ../lib/libsgutils2.la @os_libs@
sg_read_buffer_LDADD = ../lib/libsgutils2.la @os_libs@
sg_read_long_LDADD = ../lib/libsgutils2.la @os_libs@
sg_reassign_LDADD = ../lib/libsgutils2.la @os_libs@
sg_requests_LDADD = ../lib/libsgutils2.la @os_libs@
sg_referrals_LDADD = ../lib/libsgutils2.la @os_libs@
sg_rep_zones_LDADD = ../lib/libsgutils2.la @os_libs@
sg_reset_LDADD = @os_libs@
sg_reset_wp_LDADD = ../lib/libsgutils2.la @os_libs@
sg_rmsn_LDADD = ../lib/libsgutils2.la @os_libs@
sg_rtpg_LDADD = ../lib/libsgutils2.la @os_libs@
sg_safte_LDADD = ../lib/libsgutils2.la @os_libs@
sg_sanitize_LDADD = ../lib/libsgutils2.la @os_libs@
sg_sat_identify_LDADD = ../lib/libsgutils2.la @os_libs@
sg_sat_phy_event_LDADD = ../lib/libsgutils2.la @os_libs@
sg_sat_read_gplog_LDADD = ../lib/libsgutils2.la @os_libs@
sg_sat_set_features_LDADD = ../lib/libsgutils2.la @os_libs@

# sg_scan_SOURCES list is already set above in the platform-specific sections
sg_scan_LDADD = ../lib/libsgutils2.la @os_libs@
sg_senddiag_LDADD = ../lib/libsgutils2.la @os_libs@
sg_ses_LDADD = ../lib/libsgutils2.la @os_libs@
sg_ses_microcode_LDADD = ../lib/libsgutils2.la @os_libs@
sg_start_LDADD = ../lib/libsgutils2.la @os_libs@
sg_stpg_LDADD = ../lib/libsgutils2.la @os_libs@
sg_sync_LDADD = ../lib/libsgutils2.la @os_libs@
sg_test_rwbuf_LDADD = ../lib/libsgutils2.la @os_libs@
sg_timestamp_LDADD = ../lib/libsgutils2.la @os_libs@
sg_turs_LDADD = ../lib/libsgutils2.la @os_libs@
sg_unmap_LDADD = ../lib/libsgutils2.la @os_libs@
sg_verify_LDADD = ../lib/libsgutils2.la @os_libs@
sg_vpd_SOURCES = sg_vpd.c sg_vpd_vendor.c
sg_vpd_LDADD = ../lib/libsgutils2.la @os_libs@
sg_write_buffer_LDADD = ../lib/libsgutils2.la @os_libs@
sg_write_long_LDADD = ../lib/libsgutils2.la @os_libs@
sg_write_same_LDADD = ../lib/libsgutils2.la @os_libs@
sg_write_verify_LDADD = ../lib/libsgutils2.la @os_libs@
sg_wr_mode_LDADD = ../lib/libsgutils2.la @os_libs@
sg_xcopy_LDADD = ../lib/libsgutils2.la @os_libs@
sg_zone_LDADD = ../lib/libsgutils2.la @os_libs@
all: all-am

.SUFFIXES:
.SUFFIXES: .c .lo .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
	@for dep in $?; do \
	  case '$(am__configure_deps)' in \
	    *$$dep*) \
	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
	        && { if test -f $@; then exit 0; else break; fi; }; \
	      exit 1;; \
	  esac; \
	done; \
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
	$(am__cd) $(top_srcdir) && \
	  $(AUTOMAKE) --gnu src/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
	@case '$?' in \
	  *config.status*) \
	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
	  *) \
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
	esac;

$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh

$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
	@$(NORMAL_INSTALL)
	@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
	if test -n "$$list"; then \
	  echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
	  $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
	fi; \
	for p in $$list; do echo "$$p $$p"; done | \
	sed 's/$(EXEEXT)$$//' | \
	while read p p1; do if test -f $$p \
	 || test -f $$p1 \
	  ; then echo "$$p"; echo "$$p"; else :; fi; \
	done | \
	sed -e 'p;s,.*/,,;n;h' \
	    -e 's|.*|.|' \
	    -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
	sed 'N;N;N;s,\n, ,g' | \
	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
	    if ($$2 == $$4) files[d] = files[d] " " $$1; \
	    else { print "f", $$3 "/" $$4, $$1; } } \
	  END { for (d in files) print "f", d, files[d] }' | \
	while read type dir files; do \
	    if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
	    test -z "$$files" || { \
	    echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
	    $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
	    } \
	; done

uninstall-binPROGRAMS:
	@$(NORMAL_UNINSTALL)
	@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
	files=`for p in $$list; do echo "$$p"; done | \
	  sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
	      -e 's/$$/$(EXEEXT)/' \
	`; \
	test -n "$$list" || exit 0; \
	echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
	cd "$(DESTDIR)$(bindir)" && rm -f $$files

clean-binPROGRAMS:
	@list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
	echo " rm -f" $$list; \
	rm -f $$list || exit $$?; \
	test -n "$(EXEEXT)" || exit 0; \
	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
	echo " rm -f" $$list; \
	rm -f $$list

sg_compare_and_write$(EXEEXT): $(sg_compare_and_write_OBJECTS) $(sg_compare_and_write_DEPENDENCIES) $(EXTRA_sg_compare_and_write_DEPENDENCIES) 
	@rm -f sg_compare_and_write$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_compare_and_write_OBJECTS) $(sg_compare_and_write_LDADD) $(LIBS)

sg_copy_results$(EXEEXT): $(sg_copy_results_OBJECTS) $(sg_copy_results_DEPENDENCIES) $(EXTRA_sg_copy_results_DEPENDENCIES) 
	@rm -f sg_copy_results$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_copy_results_OBJECTS) $(sg_copy_results_LDADD) $(LIBS)

sg_dd$(EXEEXT): $(sg_dd_OBJECTS) $(sg_dd_DEPENDENCIES) $(EXTRA_sg_dd_DEPENDENCIES) 
	@rm -f sg_dd$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_dd_OBJECTS) $(sg_dd_LDADD) $(LIBS)

sg_decode_sense$(EXEEXT): $(sg_decode_sense_OBJECTS) $(sg_decode_sense_DEPENDENCIES) $(EXTRA_sg_decode_sense_DEPENDENCIES) 
	@rm -f sg_decode_sense$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_decode_sense_OBJECTS) $(sg_decode_sense_LDADD) $(LIBS)

sg_emc_trespass$(EXEEXT): $(sg_emc_trespass_OBJECTS) $(sg_emc_trespass_DEPENDENCIES) $(EXTRA_sg_emc_trespass_DEPENDENCIES) 
	@rm -f sg_emc_trespass$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_emc_trespass_OBJECTS) $(sg_emc_trespass_LDADD) $(LIBS)

sg_format$(EXEEXT): $(sg_format_OBJECTS) $(sg_format_DEPENDENCIES) $(EXTRA_sg_format_DEPENDENCIES) 
	@rm -f sg_format$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_format_OBJECTS) $(sg_format_LDADD) $(LIBS)

sg_get_config$(EXEEXT): $(sg_get_config_OBJECTS) $(sg_get_config_DEPENDENCIES) $(EXTRA_sg_get_config_DEPENDENCIES) 
	@rm -f sg_get_config$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_get_config_OBJECTS) $(sg_get_config_LDADD) $(LIBS)

sg_get_lba_status$(EXEEXT): $(sg_get_lba_status_OBJECTS) $(sg_get_lba_status_DEPENDENCIES) $(EXTRA_sg_get_lba_status_DEPENDENCIES) 
	@rm -f sg_get_lba_status$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_get_lba_status_OBJECTS) $(sg_get_lba_status_LDADD) $(LIBS)

sg_ident$(EXEEXT): $(sg_ident_OBJECTS) $(sg_ident_DEPENDENCIES) $(EXTRA_sg_ident_DEPENDENCIES) 
	@rm -f sg_ident$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_ident_OBJECTS) $(sg_ident_LDADD) $(LIBS)

sg_inq$(EXEEXT): $(sg_inq_OBJECTS) $(sg_inq_DEPENDENCIES) $(EXTRA_sg_inq_DEPENDENCIES) 
	@rm -f sg_inq$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_inq_OBJECTS) $(sg_inq_LDADD) $(LIBS)

sg_logs$(EXEEXT): $(sg_logs_OBJECTS) $(sg_logs_DEPENDENCIES) $(EXTRA_sg_logs_DEPENDENCIES) 
	@rm -f sg_logs$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_logs_OBJECTS) $(sg_logs_LDADD) $(LIBS)

sg_luns$(EXEEXT): $(sg_luns_OBJECTS) $(sg_luns_DEPENDENCIES) $(EXTRA_sg_luns_DEPENDENCIES) 
	@rm -f sg_luns$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_luns_OBJECTS) $(sg_luns_LDADD) $(LIBS)

sg_map$(EXEEXT): $(sg_map_OBJECTS) $(sg_map_DEPENDENCIES) $(EXTRA_sg_map_DEPENDENCIES) 
	@rm -f sg_map$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_map_OBJECTS) $(sg_map_LDADD) $(LIBS)

sg_map26$(EXEEXT): $(sg_map26_OBJECTS) $(sg_map26_DEPENDENCIES) $(EXTRA_sg_map26_DEPENDENCIES) 
	@rm -f sg_map26$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_map26_OBJECTS) $(sg_map26_LDADD) $(LIBS)

sg_modes$(EXEEXT): $(sg_modes_OBJECTS) $(sg_modes_DEPENDENCIES) $(EXTRA_sg_modes_DEPENDENCIES) 
	@rm -f sg_modes$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_modes_OBJECTS) $(sg_modes_LDADD) $(LIBS)

sg_opcodes$(EXEEXT): $(sg_opcodes_OBJECTS) $(sg_opcodes_DEPENDENCIES) $(EXTRA_sg_opcodes_DEPENDENCIES) 
	@rm -f sg_opcodes$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_opcodes_OBJECTS) $(sg_opcodes_LDADD) $(LIBS)

sg_persist$(EXEEXT): $(sg_persist_OBJECTS) $(sg_persist_DEPENDENCIES) $(EXTRA_sg_persist_DEPENDENCIES) 
	@rm -f sg_persist$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_persist_OBJECTS) $(sg_persist_LDADD) $(LIBS)

sg_prevent$(EXEEXT): $(sg_prevent_OBJECTS) $(sg_prevent_DEPENDENCIES) $(EXTRA_sg_prevent_DEPENDENCIES) 
	@rm -f sg_prevent$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_prevent_OBJECTS) $(sg_prevent_LDADD) $(LIBS)

sg_raw$(EXEEXT): $(sg_raw_OBJECTS) $(sg_raw_DEPENDENCIES) $(EXTRA_sg_raw_DEPENDENCIES) 
	@rm -f sg_raw$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_raw_OBJECTS) $(sg_raw_LDADD) $(LIBS)

sg_rbuf$(EXEEXT): $(sg_rbuf_OBJECTS) $(sg_rbuf_DEPENDENCIES) $(EXTRA_sg_rbuf_DEPENDENCIES) 
	@rm -f sg_rbuf$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_rbuf_OBJECTS) $(sg_rbuf_LDADD) $(LIBS)

sg_rdac$(EXEEXT): $(sg_rdac_OBJECTS) $(sg_rdac_DEPENDENCIES) $(EXTRA_sg_rdac_DEPENDENCIES) 
	@rm -f sg_rdac$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_rdac_OBJECTS) $(sg_rdac_LDADD) $(LIBS)

sg_read$(EXEEXT): $(sg_read_OBJECTS) $(sg_read_DEPENDENCIES) $(EXTRA_sg_read_DEPENDENCIES) 
	@rm -f sg_read$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_read_OBJECTS) $(sg_read_LDADD) $(LIBS)

sg_read_attr$(EXEEXT): $(sg_read_attr_OBJECTS) $(sg_read_attr_DEPENDENCIES) $(EXTRA_sg_read_attr_DEPENDENCIES) 
	@rm -f sg_read_attr$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_read_attr_OBJECTS) $(sg_read_attr_LDADD) $(LIBS)

sg_read_block_limits$(EXEEXT): $(sg_read_block_limits_OBJECTS) $(sg_read_block_limits_DEPENDENCIES) $(EXTRA_sg_read_block_limits_DEPENDENCIES) 
	@rm -f sg_read_block_limits$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_read_block_limits_OBJECTS) $(sg_read_block_limits_LDADD) $(LIBS)

sg_read_buffer$(EXEEXT): $(sg_read_buffer_OBJECTS) $(sg_read_buffer_DEPENDENCIES) $(EXTRA_sg_read_buffer_DEPENDENCIES) 
	@rm -f sg_read_buffer$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_read_buffer_OBJECTS) $(sg_read_buffer_LDADD) $(LIBS)

sg_read_long$(EXEEXT): $(sg_read_long_OBJECTS) $(sg_read_long_DEPENDENCIES) $(EXTRA_sg_read_long_DEPENDENCIES) 
	@rm -f sg_read_long$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_read_long_OBJECTS) $(sg_read_long_LDADD) $(LIBS)

sg_readcap$(EXEEXT): $(sg_readcap_OBJECTS) $(sg_readcap_DEPENDENCIES) $(EXTRA_sg_readcap_DEPENDENCIES) 
	@rm -f sg_readcap$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_readcap_OBJECTS) $(sg_readcap_LDADD) $(LIBS)

sg_reassign$(EXEEXT): $(sg_reassign_OBJECTS) $(sg_reassign_DEPENDENCIES) $(EXTRA_sg_reassign_DEPENDENCIES) 
	@rm -f sg_reassign$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_reassign_OBJECTS) $(sg_reassign_LDADD) $(LIBS)

sg_referrals$(EXEEXT): $(sg_referrals_OBJECTS) $(sg_referrals_DEPENDENCIES) $(EXTRA_sg_referrals_DEPENDENCIES) 
	@rm -f sg_referrals$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_referrals_OBJECTS) $(sg_referrals_LDADD) $(LIBS)

sg_rep_zones$(EXEEXT): $(sg_rep_zones_OBJECTS) $(sg_rep_zones_DEPENDENCIES) $(EXTRA_sg_rep_zones_DEPENDENCIES) 
	@rm -f sg_rep_zones$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_rep_zones_OBJECTS) $(sg_rep_zones_LDADD) $(LIBS)

sg_requests$(EXEEXT): $(sg_requests_OBJECTS) $(sg_requests_DEPENDENCIES) $(EXTRA_sg_requests_DEPENDENCIES) 
	@rm -f sg_requests$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_requests_OBJECTS) $(sg_requests_LDADD) $(LIBS)

sg_reset$(EXEEXT): $(sg_reset_OBJECTS) $(sg_reset_DEPENDENCIES) $(EXTRA_sg_reset_DEPENDENCIES) 
	@rm -f sg_reset$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_reset_OBJECTS) $(sg_reset_LDADD) $(LIBS)

sg_reset_wp$(EXEEXT): $(sg_reset_wp_OBJECTS) $(sg_reset_wp_DEPENDENCIES) $(EXTRA_sg_reset_wp_DEPENDENCIES) 
	@rm -f sg_reset_wp$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_reset_wp_OBJECTS) $(sg_reset_wp_LDADD) $(LIBS)

sg_rmsn$(EXEEXT): $(sg_rmsn_OBJECTS) $(sg_rmsn_DEPENDENCIES) $(EXTRA_sg_rmsn_DEPENDENCIES) 
	@rm -f sg_rmsn$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_rmsn_OBJECTS) $(sg_rmsn_LDADD) $(LIBS)

sg_rtpg$(EXEEXT): $(sg_rtpg_OBJECTS) $(sg_rtpg_DEPENDENCIES) $(EXTRA_sg_rtpg_DEPENDENCIES) 
	@rm -f sg_rtpg$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_rtpg_OBJECTS) $(sg_rtpg_LDADD) $(LIBS)

sg_safte$(EXEEXT): $(sg_safte_OBJECTS) $(sg_safte_DEPENDENCIES) $(EXTRA_sg_safte_DEPENDENCIES) 
	@rm -f sg_safte$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_safte_OBJECTS) $(sg_safte_LDADD) $(LIBS)

sg_sanitize$(EXEEXT): $(sg_sanitize_OBJECTS) $(sg_sanitize_DEPENDENCIES) $(EXTRA_sg_sanitize_DEPENDENCIES) 
	@rm -f sg_sanitize$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_sanitize_OBJECTS) $(sg_sanitize_LDADD) $(LIBS)

sg_sat_identify$(EXEEXT): $(sg_sat_identify_OBJECTS) $(sg_sat_identify_DEPENDENCIES) $(EXTRA_sg_sat_identify_DEPENDENCIES) 
	@rm -f sg_sat_identify$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_sat_identify_OBJECTS) $(sg_sat_identify_LDADD) $(LIBS)

sg_sat_phy_event$(EXEEXT): $(sg_sat_phy_event_OBJECTS) $(sg_sat_phy_event_DEPENDENCIES) $(EXTRA_sg_sat_phy_event_DEPENDENCIES) 
	@rm -f sg_sat_phy_event$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_sat_phy_event_OBJECTS) $(sg_sat_phy_event_LDADD) $(LIBS)

sg_sat_read_gplog$(EXEEXT): $(sg_sat_read_gplog_OBJECTS) $(sg_sat_read_gplog_DEPENDENCIES) $(EXTRA_sg_sat_read_gplog_DEPENDENCIES) 
	@rm -f sg_sat_read_gplog$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_sat_read_gplog_OBJECTS) $(sg_sat_read_gplog_LDADD) $(LIBS)

sg_sat_set_features$(EXEEXT): $(sg_sat_set_features_OBJECTS) $(sg_sat_set_features_DEPENDENCIES) $(EXTRA_sg_sat_set_features_DEPENDENCIES) 
	@rm -f sg_sat_set_features$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_sat_set_features_OBJECTS) $(sg_sat_set_features_LDADD) $(LIBS)

sg_scan$(EXEEXT): $(sg_scan_OBJECTS) $(sg_scan_DEPENDENCIES) $(EXTRA_sg_scan_DEPENDENCIES) 
	@rm -f sg_scan$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_scan_OBJECTS) $(sg_scan_LDADD) $(LIBS)

sg_senddiag$(EXEEXT): $(sg_senddiag_OBJECTS) $(sg_senddiag_DEPENDENCIES) $(EXTRA_sg_senddiag_DEPENDENCIES) 
	@rm -f sg_senddiag$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_senddiag_OBJECTS) $(sg_senddiag_LDADD) $(LIBS)

sg_ses$(EXEEXT): $(sg_ses_OBJECTS) $(sg_ses_DEPENDENCIES) $(EXTRA_sg_ses_DEPENDENCIES) 
	@rm -f sg_ses$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_ses_OBJECTS) $(sg_ses_LDADD) $(LIBS)

sg_ses_microcode$(EXEEXT): $(sg_ses_microcode_OBJECTS) $(sg_ses_microcode_DEPENDENCIES) $(EXTRA_sg_ses_microcode_DEPENDENCIES) 
	@rm -f sg_ses_microcode$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_ses_microcode_OBJECTS) $(sg_ses_microcode_LDADD) $(LIBS)

sg_start$(EXEEXT): $(sg_start_OBJECTS) $(sg_start_DEPENDENCIES) $(EXTRA_sg_start_DEPENDENCIES) 
	@rm -f sg_start$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_start_OBJECTS) $(sg_start_LDADD) $(LIBS)

sg_stpg$(EXEEXT): $(sg_stpg_OBJECTS) $(sg_stpg_DEPENDENCIES) $(EXTRA_sg_stpg_DEPENDENCIES) 
	@rm -f sg_stpg$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_stpg_OBJECTS) $(sg_stpg_LDADD) $(LIBS)

sg_sync$(EXEEXT): $(sg_sync_OBJECTS) $(sg_sync_DEPENDENCIES) $(EXTRA_sg_sync_DEPENDENCIES) 
	@rm -f sg_sync$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_sync_OBJECTS) $(sg_sync_LDADD) $(LIBS)

sg_test_rwbuf$(EXEEXT): $(sg_test_rwbuf_OBJECTS) $(sg_test_rwbuf_DEPENDENCIES) $(EXTRA_sg_test_rwbuf_DEPENDENCIES) 
	@rm -f sg_test_rwbuf$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_test_rwbuf_OBJECTS) $(sg_test_rwbuf_LDADD) $(LIBS)

sg_timestamp$(EXEEXT): $(sg_timestamp_OBJECTS) $(sg_timestamp_DEPENDENCIES) $(EXTRA_sg_timestamp_DEPENDENCIES) 
	@rm -f sg_timestamp$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_timestamp_OBJECTS) $(sg_timestamp_LDADD) $(LIBS)

sg_turs$(EXEEXT): $(sg_turs_OBJECTS) $(sg_turs_DEPENDENCIES) $(EXTRA_sg_turs_DEPENDENCIES) 
	@rm -f sg_turs$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_turs_OBJECTS) $(sg_turs_LDADD) $(LIBS)

sg_unmap$(EXEEXT): $(sg_unmap_OBJECTS) $(sg_unmap_DEPENDENCIES) $(EXTRA_sg_unmap_DEPENDENCIES) 
	@rm -f sg_unmap$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_unmap_OBJECTS) $(sg_unmap_LDADD) $(LIBS)

sg_verify$(EXEEXT): $(sg_verify_OBJECTS) $(sg_verify_DEPENDENCIES) $(EXTRA_sg_verify_DEPENDENCIES) 
	@rm -f sg_verify$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_verify_OBJECTS) $(sg_verify_LDADD) $(LIBS)

sg_vpd$(EXEEXT): $(sg_vpd_OBJECTS) $(sg_vpd_DEPENDENCIES) $(EXTRA_sg_vpd_DEPENDENCIES) 
	@rm -f sg_vpd$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_vpd_OBJECTS) $(sg_vpd_LDADD) $(LIBS)

sg_wr_mode$(EXEEXT): $(sg_wr_mode_OBJECTS) $(sg_wr_mode_DEPENDENCIES) $(EXTRA_sg_wr_mode_DEPENDENCIES) 
	@rm -f sg_wr_mode$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_wr_mode_OBJECTS) $(sg_wr_mode_LDADD) $(LIBS)

sg_write_buffer$(EXEEXT): $(sg_write_buffer_OBJECTS) $(sg_write_buffer_DEPENDENCIES) $(EXTRA_sg_write_buffer_DEPENDENCIES) 
	@rm -f sg_write_buffer$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_write_buffer_OBJECTS) $(sg_write_buffer_LDADD) $(LIBS)

sg_write_long$(EXEEXT): $(sg_write_long_OBJECTS) $(sg_write_long_DEPENDENCIES) $(EXTRA_sg_write_long_DEPENDENCIES) 
	@rm -f sg_write_long$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_write_long_OBJECTS) $(sg_write_long_LDADD) $(LIBS)

sg_write_same$(EXEEXT): $(sg_write_same_OBJECTS) $(sg_write_same_DEPENDENCIES) $(EXTRA_sg_write_same_DEPENDENCIES) 
	@rm -f sg_write_same$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_write_same_OBJECTS) $(sg_write_same_LDADD) $(LIBS)

sg_write_verify$(EXEEXT): $(sg_write_verify_OBJECTS) $(sg_write_verify_DEPENDENCIES) $(EXTRA_sg_write_verify_DEPENDENCIES) 
	@rm -f sg_write_verify$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_write_verify_OBJECTS) $(sg_write_verify_LDADD) $(LIBS)

sg_xcopy$(EXEEXT): $(sg_xcopy_OBJECTS) $(sg_xcopy_DEPENDENCIES) $(EXTRA_sg_xcopy_DEPENDENCIES) 
	@rm -f sg_xcopy$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_xcopy_OBJECTS) $(sg_xcopy_LDADD) $(LIBS)

sg_zone$(EXEEXT): $(sg_zone_OBJECTS) $(sg_zone_DEPENDENCIES) $(EXTRA_sg_zone_DEPENDENCIES) 
	@rm -f sg_zone$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sg_zone_OBJECTS) $(sg_zone_LDADD) $(LIBS)

sginfo$(EXEEXT): $(sginfo_OBJECTS) $(sginfo_DEPENDENCIES) $(EXTRA_sginfo_DEPENDENCIES) 
	@rm -f sginfo$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sginfo_OBJECTS) $(sginfo_LDADD) $(LIBS)

sgm_dd$(EXEEXT): $(sgm_dd_OBJECTS) $(sgm_dd_DEPENDENCIES) $(EXTRA_sgm_dd_DEPENDENCIES) 
	@rm -f sgm_dd$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sgm_dd_OBJECTS) $(sgm_dd_LDADD) $(LIBS)

sgp_dd$(EXEEXT): $(sgp_dd_OBJECTS) $(sgp_dd_DEPENDENCIES) $(EXTRA_sgp_dd_DEPENDENCIES) 
	@rm -f sgp_dd$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sgp_dd_OBJECTS) $(sgp_dd_LDADD) $(LIBS)

mostlyclean-compile:
	-rm -f *.$(OBJEXT)

distclean-compile:
	-rm -f *.tab.c

@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_compare_and_write.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_copy_results.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_dd.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_decode_sense.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_emc_trespass.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_format.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_get_config.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_get_lba_status.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_ident.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_inq.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_inq_data.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_logs.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_luns.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_map.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_map26.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_modes.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_opcodes.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_persist.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_prevent.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_raw.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_rbuf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_rdac.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_read.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_read_attr.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_read_block_limits.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_read_buffer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_read_long.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_readcap.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_reassign.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_referrals.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_rep_zones.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_requests.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_reset.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_reset_wp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_rmsn.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_rtpg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_safte.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_sanitize.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_sat_identify.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_sat_phy_event.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_sat_read_gplog.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_sat_set_features.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_scan_linux.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_scan_win32.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_senddiag.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_ses.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_ses_microcode.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_start.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_stpg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_sync.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_test_rwbuf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_timestamp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_turs.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_unmap.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_verify.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_vpd.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_vpd_vendor.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_wr_mode.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_write_buffer.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_write_long.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_write_same.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_write_verify.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_xcopy.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_zone.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sginfo.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sgm_dd.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sgp_dd.Po@am__quote@

.c.o:
@am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<

.c.obj:
@am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`

.c.lo:
@am__fastdepCC_TRUE@	$(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs

ID: $(am__tagged_files)
	$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-am
TAGS: tags

tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
	set x; \
	here=`pwd`; \
	$(am__define_uniq_tagged_files); \
	shift; \
	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
	  test -n "$$unique" || unique=$$empty_fix; \
	  if test $$# -gt 0; then \
	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
	      "$$@" $$unique; \
	  else \
	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
	      $$unique; \
	  fi; \
	fi
ctags: ctags-am

CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
	$(am__define_uniq_tagged_files); \
	test -z "$(CTAGS_ARGS)$$unique" \
	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
	     $$unique

GTAGS:
	here=`$(am__cd) $(top_builddir) && pwd` \
	  && $(am__cd) $(top_srcdir) \
	  && gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am

cscopelist-am: $(am__tagged_files)
	list='$(am__tagged_files)'; \
	case "$(srcdir)" in \
	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
	  *) sdir=$(subdir)/$(srcdir) ;; \
	esac; \
	for i in $$list; do \
	  if test -f "$$i"; then \
	    echo "$(subdir)/$$i"; \
	  else \
	    echo "$$sdir/$$i"; \
	  fi; \
	done >> $(top_builddir)/cscope.files

distclean-tags:
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags

distdir: $(DISTFILES)
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	list='$(DISTFILES)'; \
	  dist_files=`for file in $$list; do echo $$file; done | \
	  sed -e "s|^$$srcdirstrip/||;t" \
	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
	case $$dist_files in \
	  */*) $(MKDIR_P) `echo "$$dist_files" | \
			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
			   sort -u` ;; \
	esac; \
	for file in $$dist_files; do \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  if test -d $$d/$$file; then \
	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
	    if test -d "$(distdir)/$$file"; then \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
	  else \
	    test -f "$(distdir)/$$file" \
	    || cp -p $$d/$$file "$(distdir)/$$file" \
	    || exit 1; \
	  fi; \
	done
check-am: all-am
check: check-am
all-am: Makefile $(PROGRAMS)
installdirs:
	for dir in "$(DESTDIR)$(bindir)"; do \
	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
	done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am

installcheck: installcheck-am
install-strip:
	if test -z '$(STRIP)'; then \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	      install; \
	else \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
	fi
mostlyclean-generic:

clean-generic:

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)

maintainer-clean-generic:
	@echo "This command is intended for maintainers to use"
	@echo "it deletes files that may require special tools to rebuild."
clean: clean-am

clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am

distclean: distclean-am
	-rm -rf ./$(DEPDIR)
	-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
	distclean-tags

dvi: dvi-am

dvi-am:

html: html-am

html-am:

info: info-am

info-am:

install-data-am:

install-dvi: install-dvi-am

install-dvi-am:

install-exec-am: install-binPROGRAMS

install-html: install-html-am

install-html-am:

install-info: install-info-am

install-info-am:

install-man:

install-pdf: install-pdf-am

install-pdf-am:

install-ps: install-ps-am

install-ps-am:

installcheck-am:

maintainer-clean: maintainer-clean-am
	-rm -rf ./$(DEPDIR)
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

mostlyclean-am: mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am: uninstall-binPROGRAMS

.MAKE: install-am install-strip

.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
	clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
	ctags ctags-am distclean distclean-compile distclean-generic \
	distclean-libtool distclean-tags distdir dvi dvi-am html \
	html-am info info-am install install-am install-binPROGRAMS \
	install-data install-data-am install-dvi install-dvi-am \
	install-exec install-exec-am install-html install-html-am \
	install-info install-info-am install-man install-pdf \
	install-pdf-am install-ps install-ps-am install-strip \
	installcheck installcheck-am installdirs maintainer-clean \
	maintainer-clean-generic mostlyclean mostlyclean-compile \
	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
	tags tags-am uninstall uninstall-am uninstall-binPROGRAMS

.PRECIOUS: Makefile


# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
