Skip to content

Commit 4ae3baa

Browse files
committed
add sg_bg_ctl; small cleanups
git-svn-id: svn://localhost/trunk@706 6180dd3e-e324-4e3e-922d-17de1ae2f315
1 parent 2e5c149 commit 4ae3baa

File tree

16 files changed

+427
-132
lines changed

16 files changed

+427
-132
lines changed

BSD_LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 1999-2013 Douglas Gilbert.
2+
* Copyright (c) 1999-2016 Douglas Gilbert.
33
* All rights reserved.
44
*
55
* Redistribution and use in source and binary forms, with or without

COVERAGE

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,14 @@ of them on the right. The second table lists supported ATA commands.
66

77
SCSI command sg3_utils utilities that use this SCSI command
88
------------ -------------------------------------------------
9+
ATA COMMAND PASS-THROUGH(12) sg_sat_identify, ++
910
ATA COMMAND PASS-THROUGH(16) sg_sat_identify, sg_sat_set_features,
1011
sg_sat_phy_event, sg_sat_read_gplog ++
1112
[sg_sat_chk_power, sg__sat_identify,
1213
sg__sat_set_features, sg_sat_smart_rd_data
1314
(previous four in the examples directory)]
14-
ATA COMMAND PASS-THROUGH(12) sg_sat_identify, ++
15+
ATA COMMAND PASS-THROUGH(32) sg_sat_identify, ++
16+
BACKGROUND CONTROL sg_bg_ctl
1517
CLOSE ZONE sg_zone
1618
COMPARE AND WRITE sg_compare_and_write
1719
COPY OPERATION ABORT ddptctl, ++
@@ -133,4 +135,4 @@ THIRD PARTY COPY IN (0x83).
133135

134136

135137
Douglas Gilbert
136-
8th February 2016
138+
19th May 2016

ChangeLog

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ Each utility has its own version number, date of last change and
22
some description at the top of its ".c" file. All utilities in the main
33
directory have their own "man" pages. There is also a sg3_utils man page.
44

5-
Changelog for sg3_utils-1.43 [20160517] [svn: r705]
5+
Changelog for sg3_utils-1.43 [20160519] [svn: r706]
6+
- sg_bg_ctl: new Background control command (spc4r08)
67
- sg_senddiag: add --timeout=SEC option
78
- sg_sanitize: add --timeout=SEC option
89
- sg_format: add --timeout=SEC option

README

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -229,8 +229,8 @@ Utilities
229229
=========
230230
Here is list in alphabetical order of utilities found in the 'src'
231231
subdirectory of the sg3_utils package:
232-
sginfo, sg_compare_and_write, sg_copy_results, sgm_dd, sgp_dd, sg_dd,
233-
sg_decode_sense, sg_emc_trespass, sg_format, sg_get_config,
232+
sginfo, sg_bt_ctl, sg_compare_and_write, sg_copy_results, sgm_dd, sgp_dd,
233+
sg_dd, sg_decode_sense, sg_emc_trespass, sg_format, sg_get_config,
234234
sg_get_lba_status, sg_ident, sg_inq, sg_logs, sg_luns, sg_map, sg_map26,
235235
sg_modes, sg_opcodes, sg_persist, sg_prevent, sg_raw, sg_rbuf, sg_rdac,
236236
sg_read, sg_read_attr, sg_readcap, sg_read_block_limits, sg_read_buffer,
@@ -382,15 +382,15 @@ interface by defining the SG3_UTILS_OLD_OPTS environment variable
382382
or using '-O' as the first command line option.
383383

384384
The more recent utilities that use "getopt_long" only are:
385-
- sg_compare_and_write, sg_decode_sense, sg_format, sg_get_config,
386-
sg_get_lba_status, sg_ident, sg_luns, sg_map26, sg_persist, sg_prevent,
387-
sg_raw, sg_read_attr, sg_read_block_limits, sg_read_buffer, sg_read_long,
388-
sg_reassign, sg_referrals, sg_requests, sg_rmsn, sg_rtpg, sg_safte,
389-
sg_sanitize, sg_sat_identify, sg_sat_phy_event, sg_sat_read_gplog,
390-
sg_sat_set_features, sg_scan(w), sg_ses, sg_ses_microcode, sg_stpg,
391-
sg_sync, sg_test_rwbuf, sg_timestamp, sg_unmap, sg_verify, sg_vpd,
392-
sg_write_buffer, sg_write_long, sg_write_same, sg_write_verify,
393-
sg_wr_mode, sg_zone
385+
- sg_bt_ctl, sg_compare_and_write, sg_decode_sense, sg_format,
386+
sg_get_config, sg_get_lba_status, sg_ident, sg_luns, sg_map26,
387+
sg_persist, sg_prevent, sg_raw, sg_read_attr, sg_read_block_limits,
388+
sg_read_buffer, sg_read_long, sg_reassign, sg_referrals, sg_requests,
389+
sg_rmsn, sg_rtpg, sg_safte, sg_sanitize, sg_sat_identify,
390+
sg_sat_phy_event, sg_sat_read_gplog, sg_sat_set_features, sg_scan(w),
391+
sg_ses, sg_ses_microcode, sg_stpg, sg_sync, sg_test_rwbuf, sg_timestamp,
392+
sg_unmap, sg_verify, sg_vpd, sg_write_buffer, sg_write_long,
393+
sg_write_same, sg_write_verify, sg_wr_mode, sg_zone
394394

395395

396396
Dangerous code
@@ -462,4 +462,4 @@ See http://sg.danny.cz/sg/tools.html
462462

463463

464464
Douglas Gilbert
465-
17th May 2016
465+
19th May 2016

doc/Makefile.am

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
11

22
man_MANS = \
33
scsi_mandat.8 scsi_readcap.8 scsi_ready.8 scsi_satl.8 scsi_start.8 \
4-
scsi_stop.8 scsi_temperature.8 sg3_utils.8 sg_compare_and_write.8 \
5-
sg_decode_sense.8 sg_format.8 sg_get_config.8 sg_get_lba_status.8 \
6-
sg_ident.8 sg_inq.8 sg_logs.8 sg_luns.8 sg_modes.8 sg_opcodes.8 \
7-
sg_persist.8 sg_prevent.8 sg_raw.8 sg_rdac.8 sg_read_attr.8 \
8-
sg_read_block_limits.8 sg_read_buffer.8 sg_read_long.8 sg_readcap.8 \
9-
sg_reassign.8 sg_referrals.8 sg_rep_zones.8 sg_requests.8 \
10-
sg_reset_wp.8 sg_rmsn.8 sg_rtpg.8 sg_safte.8 sg_sanitize.8 \
11-
sg_sat_identify.8 sg_sat_phy_event.8 sg_sat_read_gplog.8 \
12-
sg_sat_set_features.8 sg_senddiag.8 sg_ses.8 sg_ses_microcode.8 \
13-
sg_start.8 sg_stpg.8 sg_sync.8 sg_timestamp.8 sg_turs.8 sg_unmap.8 \
14-
sg_verify.8 sg_vpd.8 sg_wr_mode.8 sg_write_buffer.8 sg_write_long.8 \
15-
sg_write_same.8 sg_write_verify.8 sg_zone.8
4+
scsi_stop.8 scsi_temperature.8 sg3_utils.8 sg_bg_ctl.8 \
5+
sg_compare_and_write.8 sg_decode_sense.8 sg_format.8 sg_get_config.8 \
6+
sg_get_lba_status.8 sg_ident.8 sg_inq.8 sg_logs.8 sg_luns.8 \
7+
sg_modes.8 sg_opcodes.8 sg_persist.8 sg_prevent.8 sg_raw.8 sg_rdac.8 \
8+
sg_read_attr.8 sg_read_block_limits.8 sg_read_buffer.8 \
9+
sg_read_long.8 sg_readcap.8 sg_reassign.8 sg_referrals.8 \
10+
sg_rep_zones.8 sg_requests.8 sg_reset_wp.8 sg_rmsn.8 sg_rtpg.8 \
11+
sg_safte.8 sg_sanitize.8 sg_sat_identify.8 sg_sat_phy_event.8 \
12+
sg_sat_read_gplog.8 sg_sat_set_features.8 sg_senddiag.8 sg_ses.8 \
13+
sg_ses_microcode.8 sg_start.8 sg_stpg.8 sg_sync.8 sg_timestamp.8 \
14+
sg_turs.8 sg_unmap.8 sg_verify.8 sg_vpd.8 sg_wr_mode.8 \
15+
sg_write_buffer.8 sg_write_long.8 sg_write_same.8 sg_write_verify.8 \
16+
sg_zone.8
1617
CLEANFILES =
1718

1819
if OS_LINUX

doc/Makefile.in

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -282,10 +282,10 @@ top_builddir = @top_builddir@
282282
top_srcdir = @top_srcdir@
283283
man_MANS = scsi_mandat.8 scsi_readcap.8 scsi_ready.8 scsi_satl.8 \
284284
scsi_start.8 scsi_stop.8 scsi_temperature.8 sg3_utils.8 \
285-
sg_compare_and_write.8 sg_decode_sense.8 sg_format.8 \
286-
sg_get_config.8 sg_get_lba_status.8 sg_ident.8 sg_inq.8 \
287-
sg_logs.8 sg_luns.8 sg_modes.8 sg_opcodes.8 sg_persist.8 \
288-
sg_prevent.8 sg_raw.8 sg_rdac.8 sg_read_attr.8 \
285+
sg_bg_ctl.8 sg_compare_and_write.8 sg_decode_sense.8 \
286+
sg_format.8 sg_get_config.8 sg_get_lba_status.8 sg_ident.8 \
287+
sg_inq.8 sg_logs.8 sg_luns.8 sg_modes.8 sg_opcodes.8 \
288+
sg_persist.8 sg_prevent.8 sg_raw.8 sg_rdac.8 sg_read_attr.8 \
289289
sg_read_block_limits.8 sg_read_buffer.8 sg_read_long.8 \
290290
sg_readcap.8 sg_reassign.8 sg_referrals.8 sg_rep_zones.8 \
291291
sg_requests.8 sg_reset_wp.8 sg_rmsn.8 sg_rtpg.8 sg_safte.8 \

doc/sg_bg_ctl.8

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
.TH SG_BG_CTL "8" "May 2016" "sg3_utils\-1.43" SG3_UTILS
2+
.SH NAME
3+
sg_bg_ctl \- send SCSI BACKGROUND CONTROL command
4+
.SH SYNOPSIS
5+
.B sg_bg_ctl
6+
[\fI\-\-ctl=CTL\fR] [\fI\-\-help\fR] [\fI\-\-time=TN\fR] [\fI\-\-verbose\fR]
7+
[\fI\-\-version\fR] \fIDEVICE\fR
8+
.SH DESCRIPTION
9+
.\" Add any additional description here
10+
.PP
11+
Sends a SCSI BACKGROUND CONTROL command to the \fIDEVICE\fR. This command
12+
was first found in the SBC\-4 draft standard revision 8 (sbc4r08.pdf). It can
13+
be used to start and stop 'advanced background operations' on the
14+
\fIDEVICE\fR. Only resource or thin provisioned devices (logical units which
15+
are typically (solid state) disks) support this command. Those advanced
16+
background operations often include garbage collection type operations which
17+
may degrade the disk's performance while they are being performed.
18+
.SH OPTIONS
19+
Arguments to long options are mandatory for short options as well.
20+
.TP
21+
\fB\-c\fR, \fB\-\-ctl\fR=\fICTL\fR
22+
\fICTL\fR is the value placed in the BO_CTL field of the BACKGROUND CONTROL
23+
command (cdb). It is a two bit field so has 4 variants: 0 does not change
24+
the host initiated advanced background operations; 1 starts these operations;
25+
2 stops these operations and 3 is reserved. The default value is 0.
26+
.TP
27+
\fB\-h\fR, \fB\-\-help\fR
28+
output the usage message then exit.
29+
.TP
30+
\fB\-t\fR, \fB\-\-time\fR=\fITN\fR
31+
\fITN\fR is a maximum time (with a unit of 100 ms or 1/10 second) that
32+
advanced background operations can occur. This value is ignored if the
33+
\fICTL\fR argument is other than 1. The default value is 0 which means there
34+
is no maximum time limit. Only values 0 to 255 (which is 25.5 seconds) can
35+
be given. This value is place in the BO_TIME field of the BACKGROUND CONTROL
36+
command.
37+
.TP
38+
\fB\-v\fR, \fB\-\-verbose\fR
39+
increase the level of verbosity, (i.e. debug output).
40+
.TP
41+
\fB\-V\fR, \fB\-\-version\fR
42+
print the version string and then exit.
43+
.SH NOTES
44+
According to T10, support for 'background control operations' is indicated by
45+
the BOCS bit being set in the Block device characteristics VPD page [0xb1].
46+
The setting of the BOCS bit can be checked with the sg_vpd and sdparm
47+
utilities (and it is read only). There is a Background operations control
48+
mode page [0xa, 0x6] with a BO_MODE field for modifying the action of this
49+
operation. The BO_MODE field can be accessed and possibly modified with the
50+
sdparm utility. The BO_STATUS field can be found in the Background operation
51+
log page [0x15, 0x2] and that can be viewed with the sg_logs utility.
52+
.PP
53+
The current draft describing this area is SBC\-4 revision 10 (sbc4r10.pdf)
54+
in clause 4.33 . That contains the following example of a background
55+
operation: "Advanced background operation may include NAND block erase
56+
operations, media read operations, and media write operations (e.g.,
57+
garbage collection), which may impact response time for normal read requests
58+
or write requests from the application client."
59+
.SH EXIT STATUS
60+
The exit status of sg_bg_ctl is 0 when it is successful. Otherwise see
61+
the sg3_utils(8) man page.
62+
.SH AUTHORS
63+
Written by Douglas Gilbert.
64+
.SH "REPORTING BUGS"
65+
Report bugs to <dgilbert at interlog dot com>.
66+
.SH COPYRIGHT
67+
Copyright \(co 2016 Douglas Gilbert
68+
.br
69+
This software is distributed under a FreeBSD license. There is NO
70+
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
71+
.SH "SEE ALSO"
72+
.B sg_vpd,sg_logs(sg3_utils); sdparm(sdparm)

src/Makefile.am

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11

22
bin_PROGRAMS = \
3-
sg_compare_and_write sg_decode_sense sg_format sg_get_config \
4-
sg_get_lba_status sg_ident sg_inq sg_logs sg_luns sg_modes \
5-
sg_opcodes sg_persist sg_prevent sg_raw sg_rdac sg_read_attr \
6-
sg_read_block_limits sg_read_buffer sg_read_long sg_readcap \
7-
sg_reassign sg_referrals sg_rep_zones sg_requests sg_reset_wp \
8-
sg_rmsn sg_rtpg sg_safte sg_sanitize sg_sat_identify \
3+
sg_bg_ctl sg_compare_and_write sg_decode_sense sg_format \
4+
sg_get_config sg_get_lba_status sg_ident sg_inq sg_logs sg_luns \
5+
sg_modes sg_opcodes sg_persist sg_prevent sg_raw sg_rdac \
6+
sg_read_attr sg_read_block_limits sg_read_buffer sg_read_long \
7+
sg_readcap sg_reassign sg_referrals sg_rep_zones sg_requests \
8+
sg_reset_wp sg_rmsn sg_rtpg sg_safte sg_sanitize sg_sat_identify \
99
sg_sat_phy_event sg_sat_read_gplog sg_sat_set_features sg_senddiag \
1010
sg_ses sg_ses_microcode sg_start sg_stpg sg_sync sg_timestamp \
1111
sg_turs sg_unmap sg_verify sg_vpd sg_wr_mode sg_write_buffer \
@@ -47,6 +47,8 @@ AM_CFLAGS = -Wall -W @os_cflags@
4747
# AM_CFLAGS = -Wall -W @os_cflags@ -pedantic -std=c11 --analyze
4848
# AM_CFLAGS = -Wall -W @os_cflags@ -pedantic -std=c++14
4949

50+
sg_bg_ctl_LDADD = ../lib/libsgutils2.la @os_libs@
51+
5052
sg_compare_and_write_LDADD = ../lib/libsgutils2.la @os_libs@
5153

5254
sg_copy_results_LDADD = ../lib/libsgutils2.la @os_libs@

src/Makefile.in

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -88,12 +88,13 @@ PRE_UNINSTALL = :
8888
POST_UNINSTALL = :
8989
build_triplet = @build@
9090
host_triplet = @host@
91-
bin_PROGRAMS = sg_compare_and_write$(EXEEXT) sg_decode_sense$(EXEEXT) \
92-
sg_format$(EXEEXT) sg_get_config$(EXEEXT) \
93-
sg_get_lba_status$(EXEEXT) sg_ident$(EXEEXT) sg_inq$(EXEEXT) \
94-
sg_logs$(EXEEXT) sg_luns$(EXEEXT) sg_modes$(EXEEXT) \
95-
sg_opcodes$(EXEEXT) sg_persist$(EXEEXT) sg_prevent$(EXEEXT) \
96-
sg_raw$(EXEEXT) sg_rdac$(EXEEXT) sg_read_attr$(EXEEXT) \
91+
bin_PROGRAMS = sg_bg_ctl$(EXEEXT) sg_compare_and_write$(EXEEXT) \
92+
sg_decode_sense$(EXEEXT) sg_format$(EXEEXT) \
93+
sg_get_config$(EXEEXT) sg_get_lba_status$(EXEEXT) \
94+
sg_ident$(EXEEXT) sg_inq$(EXEEXT) sg_logs$(EXEEXT) \
95+
sg_luns$(EXEEXT) sg_modes$(EXEEXT) sg_opcodes$(EXEEXT) \
96+
sg_persist$(EXEEXT) sg_prevent$(EXEEXT) sg_raw$(EXEEXT) \
97+
sg_rdac$(EXEEXT) sg_read_attr$(EXEEXT) \
9798
sg_read_block_limits$(EXEEXT) sg_read_buffer$(EXEEXT) \
9899
sg_read_long$(EXEEXT) sg_readcap$(EXEEXT) sg_reassign$(EXEEXT) \
99100
sg_referrals$(EXEEXT) sg_rep_zones$(EXEEXT) \
@@ -139,13 +140,16 @@ CONFIG_CLEAN_VPATH_FILES =
139140
@OS_WIN32_CYGWIN_TRUE@am__EXEEXT_3 = sg_scan$(EXEEXT)
140141
am__installdirs = "$(DESTDIR)$(bindir)"
141142
PROGRAMS = $(bin_PROGRAMS)
142-
sg_compare_and_write_SOURCES = sg_compare_and_write.c
143-
sg_compare_and_write_OBJECTS = sg_compare_and_write.$(OBJEXT)
144-
sg_compare_and_write_DEPENDENCIES = ../lib/libsgutils2.la
143+
sg_bg_ctl_SOURCES = sg_bg_ctl.c
144+
sg_bg_ctl_OBJECTS = sg_bg_ctl.$(OBJEXT)
145+
sg_bg_ctl_DEPENDENCIES = ../lib/libsgutils2.la
145146
AM_V_lt = $(am__v_lt_@AM_V@)
146147
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
147148
am__v_lt_0 = --silent
148149
am__v_lt_1 =
150+
sg_compare_and_write_SOURCES = sg_compare_and_write.c
151+
sg_compare_and_write_OBJECTS = sg_compare_and_write.$(OBJEXT)
152+
sg_compare_and_write_DEPENDENCIES = ../lib/libsgutils2.la
149153
sg_copy_results_SOURCES = sg_copy_results.c
150154
sg_copy_results_OBJECTS = sg_copy_results.$(OBJEXT)
151155
sg_copy_results_DEPENDENCIES = ../lib/libsgutils2.la
@@ -374,7 +378,7 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
374378
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
375379
am__v_CCLD_0 = @echo " CCLD " $@;
376380
am__v_CCLD_1 =
377-
SOURCES = sg_compare_and_write.c sg_copy_results.c sg_dd.c \
381+
SOURCES = sg_bg_ctl.c sg_compare_and_write.c sg_copy_results.c sg_dd.c \
378382
sg_decode_sense.c sg_emc_trespass.c sg_format.c \
379383
sg_get_config.c sg_get_lba_status.c sg_ident.c \
380384
$(sg_inq_SOURCES) sg_logs.c sg_luns.c sg_map.c sg_map26.c \
@@ -390,8 +394,8 @@ SOURCES = sg_compare_and_write.c sg_copy_results.c sg_dd.c \
390394
sg_verify.c $(sg_vpd_SOURCES) sg_wr_mode.c sg_write_buffer.c \
391395
sg_write_long.c sg_write_same.c sg_write_verify.c sg_xcopy.c \
392396
sg_zone.c sginfo.c sgm_dd.c sgp_dd.c
393-
DIST_SOURCES = sg_compare_and_write.c sg_copy_results.c sg_dd.c \
394-
sg_decode_sense.c sg_emc_trespass.c sg_format.c \
397+
DIST_SOURCES = sg_bg_ctl.c sg_compare_and_write.c sg_copy_results.c \
398+
sg_dd.c sg_decode_sense.c sg_emc_trespass.c sg_format.c \
395399
sg_get_config.c sg_get_lba_status.c sg_ident.c \
396400
$(sg_inq_SOURCES) sg_logs.c sg_luns.c sg_map.c sg_map26.c \
397401
sg_modes.c sg_opcodes.c sg_persist.c sg_prevent.c sg_raw.c \
@@ -564,6 +568,7 @@ AM_CFLAGS = -Wall -W @os_cflags@
564568
# AM_CFLAGS = -Wall -W @os_cflags@ -pedantic -std=c11
565569
# AM_CFLAGS = -Wall -W @os_cflags@ -pedantic -std=c11 --analyze
566570
# AM_CFLAGS = -Wall -W @os_cflags@ -pedantic -std=c++14
571+
sg_bg_ctl_LDADD = ../lib/libsgutils2.la @os_libs@
567572
sg_compare_and_write_LDADD = ../lib/libsgutils2.la @os_libs@
568573
sg_copy_results_LDADD = ../lib/libsgutils2.la @os_libs@
569574
sg_dd_LDADD = ../lib/libsgutils2.la @os_libs@
@@ -715,6 +720,10 @@ clean-binPROGRAMS:
715720
echo " rm -f" $$list; \
716721
rm -f $$list
717722

723+
sg_bg_ctl$(EXEEXT): $(sg_bg_ctl_OBJECTS) $(sg_bg_ctl_DEPENDENCIES) $(EXTRA_sg_bg_ctl_DEPENDENCIES)
724+
@rm -f sg_bg_ctl$(EXEEXT)
725+
$(AM_V_CCLD)$(LINK) $(sg_bg_ctl_OBJECTS) $(sg_bg_ctl_LDADD) $(LIBS)
726+
718727
sg_compare_and_write$(EXEEXT): $(sg_compare_and_write_OBJECTS) $(sg_compare_and_write_DEPENDENCIES) $(EXTRA_sg_compare_and_write_DEPENDENCIES)
719728
@rm -f sg_compare_and_write$(EXEEXT)
720729
$(AM_V_CCLD)$(LINK) $(sg_compare_and_write_OBJECTS) $(sg_compare_and_write_LDADD) $(LIBS)
@@ -977,6 +986,7 @@ mostlyclean-compile:
977986
distclean-compile:
978987
-rm -f *.tab.c
979988

989+
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_bg_ctl.Po@am__quote@
980990
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_compare_and_write.Po@am__quote@
981991
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_copy_results.Po@am__quote@
982992
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sg_dd.Po@am__quote@

0 commit comments

Comments
 (0)