Wang Mingyu f0db676880
ddrescue: upgrade 1.29.1 -> 1.30
Changelog:
===========
* Replace pass 5 of copying with a sweeping phase after trimming.
* New option '-N, --no-sweep' to disable reading of skipped areas.
  Reassign short name '-N' from option '--no-trim' to '--no-sweep'.
* main.cc. Make '--size=output' use the size of outfile.
  (do_rescue): Make '-x 0' extend outfile to size of infile.
* main_common.cc (strtoll_): New function accepting underscores.
* rescuebook.cc (fcopy_non_tried, rcopy_non_tried): Limit pass 2 to
  blocks adjacent to a finished block. (Delimit bad area as a whole).
  (trim_errors): Trim only edges adjacent to a finished block.
  Initial skip size now defaults to (infile_size / 32_768).
  Only retrim blocks adjacent to a non-tried or finished block.
  (update_rates): Don't force update of a_rate, c_rate, ts.
  (Rescuebook): Estimate remaining time from last 60 seconds.
* genbook.cc (format_time), loggers.cc (format_time_dhms): Add years.
* loggers.cc (Event_logger): Add finished_size, a_rate, read errors.
* ddrescuelog.cc: New option '-H, --make-test'.
* ddrescue.texi: Document rescue with lziprecover's recovery record.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2026-01-12 08:53:42 -08:00

45 lines
1.4 KiB
BlitzBasic

SUMMARY = "Data recovery tool"
DESCRIPTION = "GNU ddrescue is a data recovery tool. It copies data \
from one file or block device (hard disc, cdrom, etc) to another, \
trying hard to rescue data in case of read errors."
HOMEPAGE = "http://www.gnu.org/software/ddrescue/ddrescue.html"
SECTION = "console"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=cca7f74ec83b7a9ce7ccd195aad471bd \
file://main_common.cc;beginline=5;endline=16;md5=ad099df052bdd8297f490712285069da \
"
SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.lz"
SRC_URI[sha256sum] = "2264622d309d6c87a1cfc19148292b8859a688e9bc02d4702f5cd4f288745542"
# This isn't already added by base.bbclass
do_unpack[depends] += "lzip-native:do_populate_sysroot"
CONFIGUREOPTS = "\
'--srcdir=${S}' \
'--prefix=${prefix}' \
'--exec-prefix=${exec_prefix}' \
'--bindir=${bindir}' \
'--datadir=${datadir}' \
'--infodir=${infodir}' \
'--sysconfdir=${sysconfdir}' \
'CXX=${CXX}' \
'CPPFLAGS=${CPPFLAGS}' \
'CXXFLAGS=${CXXFLAGS}' \
'LDFLAGS=${LDFLAGS}' \
"
EXTRA_OEMAKE = ""
do_configure () {
${S}/configure ${CONFIGUREOPTS}
}
do_install () {
oe_runmake 'DESTDIR=${D}' install
# Info dir listing isn't interesting at this point so remove it if it exists.
if [ -e "${D}${infodir}/dir" ]; then
rm -f ${D}${infodir}/dir
fi
}