| History log of /src/bin/dd/Makefile | 
    | Revision |  | Date | Author | Comments | 
| 1.20 |  | 04-Oct-2019 | mrg | copy libc's swab.c into dd as dd_swab(), and remove the restrict. 
 our implementation was fine, but the restrict marker is problematic
 as gcc 8 is now more strict about checking for restrict issues.
 
 this is the only actual consumer of swab(3) in our tree, though,
 besides the test for it.  oh well.
 
 | 
| 1.19 |  | 15-Sep-2019 | kamil | Drop -D_INCOMPLETE_XOPEN_C063 from dd(1) 
 | 
| 1.18 |  | 18-Mar-2015 | manu | branches:  1.18.16; Add iflag and oflag operands to dd(1)
 
 Like GNU dd(1) similar operands, iflag and oflag allow specifying the
 O_* flags given to open(2) for the input and the output file. The values
 are comma-sepratated, lower-case, O_ prefix-stripped constants documented
 in open(2).
 
 Since iflag and oflag override default values, specifying oflag means
 O_CREATE is not set by default and must be specified explicitely.
 
 Some values do not make sense (e.g.: iflag=directory) but are still used
 and will raise a warning. For oflag, values rdonly, rdwr and wronly are
 filtered out with a warning (dd(1) attempts open(2) with O_RDWR and
 then O_WRONLY on failure).
 
 Specifying oflag=trunc along with (seek, oseek or conv=notrunc) is
 contradictory and will raise an error.
 
 iflag and oflag are disabled if building with -DMALLPROG
 
 | 
| 1.17 |  | 08-Aug-2012 | christos | branches:  1.17.12; let the standard rules deal with librumpclient
 
 | 
| 1.16 |  | 06-Nov-2011 | jym | Add a new command to dd(1): msgfmt. The command modifies the output of the information summary returned by dd(1). This can be used
 to specify messages in a more usable (or parseable) format like
 human-readable values.
 
 My intent is to re-use this for building image files and quick I/O
 benchmarking.
 
 Reviewed by tsutsui@ on tech-userlevel. See also
 http://mail-index.netbsd.org/tech-userlevel/2010/12/03/msg004179.html
 
 Some examples:
 
 $ dd if=/dev/zero of=/dev/null bs=1m count=1 msgfmt=human
 1+0 records in
 1+0 records out
 1048576 bytes (1,0 MB) transferred in 0.001 secs (1048576000 bytes/sec - 1,0 GB/sec)
 
 $ dd if=/dev/zero of=/dev/null count=1 msgfmt='
 > <speed>%E</speed>
 > <time>%s</time>
 > <bytes>%b</bytes>
 > '
 <speed>500 KB/sec</speed>
 <time>0.001</time>
 <bytes>512</bytes>
 
 | 
| 1.15 |  | 04-Feb-2011 | pooka | branches:  1.15.4; Remove the rif/rof options and add rump.dd.  This makes usage
 consistent with other rump clients.  Copying between kernels is
 done using the host pipe, e.g.:
 
 dd if=foo rof=bar skip=1 seek=1 => dd if=foo skip=1 | rump.dd of=bar seek=1
 
 Also, the pipe idiom extends to copying between different rump
 kernels, e.g.:
 
 env RUMP_SERVER=unix://srv1 rump.dd if=thefile \
 | env RUMP_SERVER=unix://srv2 rump.dd of=thefile
 
 Pipe approach suggested by yamt (thanks!)
 
 | 
| 1.14 |  | 22-Nov-2010 | pooka | branches:  1.14.2; extra crunchgen hoops
 
 | 
| 1.13 |  | 22-Nov-2010 | pooka | Add two new operands: "rif" and "rof".  They operate exactly like "if" and "of" with the exception that the communicate with a rump
 kernel instead of the host kernel.
 
 For example, to write stdout to /tmp/file.txt in a rump kernel namespace:
 dd rof=/tmp/file.txt
 
 copy /file1 to /file2 inside a rump kernel:
 dd rif=/file1 rof=/file2
 
 copy a snippet from /dev/rmd0d on the rump kernel to the host fs:
 dd rif=/dev/rmd0d of=save seek=1000 count=3
 
 Eat that, usermode OS.
 
 (I'll document the operands one I have some manpage to refer to
 for rump client use).
 
 | 
| 1.12 |  | 05-Oct-2007 | lukem | Convert to using raise_default_signal(3). 
 | 
| 1.11 |  | 26-Jun-2005 | christos | branches:  1.11.10; sprinkle a little const, and now everything compiles with WARNS=3
 
 | 
| 1.10 |  | 29-Nov-2002 | lukem | convert to using strsuftoll(3) from libc 
 | 
| 1.9 |  | 02-Feb-2002 | lukem | .ifdef SMALLPROG, compile with -DNO_CONV and don't compile in conv_tab.o 
 | 
| 1.8 |  | 25-Nov-2001 | lukem | - Use u_longlong_t instead of u_quad_t, u_long, or int for various buffer sizes - Add strsuftoull(), which parses a number into a u_longlong_t, with
 multiplication support, and support for 'g' (GB) and 't' (TB) suffices.
 If an error occurs, print to stderr and exit.
 Based on get_blk() from args.c and strsufto*() (in other programs)
 - Add strsuftoullx(), which acts as per strsuftoull() but returns the
 error in the supplied buffer instead (if the returned buffer != "", an
 error occurred)
 - Replace get_bsz() use with strsuftoull()
 - Remove (now) unnecessary argument validation
 - Remove unused {f,p,s,t}_stats fields in struct IO
 
 | 
| 1.7 |  | 25-Nov-2001 | lukem | - ANSI KNF - WARNS=2 (mainly converting some "char *" -> "const char *")
 
 | 
| 1.6 |  | 20-Jul-1997 | christos | Remove WARNS=1 from all the subdirectory Makefiles, and add it to Makefile.inc now that all /bin has been cleaned.
 
 | 
| 1.5 |  | 20-Jul-1997 | christos | Fix compiler warnings. Add WARNS=1
 
 | 
| 1.4 |  | 21-Mar-1995 | cgd | convert to new RCS id conventions. 
 | 
| 1.3 |  | 22-Sep-1994 | mycroft | Merge 4.4-Lite version. 
 | 
| 1.2 |  | 01-Aug-1993 | mycroft | Add RCS identifiers. 
 | 
| 1.1 |  | 04-May-1993 | glass | branches:  1.1.1; added dd(1) from ftp.uu.net:bsd-sources; torching GNU dd
 
 | 
| 1.1.1.1 |  | 22-Sep-1994 | mycroft | Import original 4.4-Lite version. 
 | 
| 1.11.10.1 |  | 06-Nov-2007 | matt | sync with HEAD 
 | 
| 1.14.2.1 |  | 08-Feb-2011 | bouyer | Sync with HEAD 
 | 
| 1.15.4.2 |  | 30-Oct-2012 | yamt | sync with head 
 | 
| 1.15.4.1 |  | 10-Nov-2011 | yamt | sync with head 
 | 
| 1.17.12.1 |  | 26-Mar-2015 | martin | Pull up following revision(s) (requested by manu in ticket #640): bin/dd/extern.h: revision 1.23
 bin/dd/dd.1: revision 1.26
 bin/dd/dd.1: revision 1.27
 bin/dd/dd.h: revision 1.16
 bin/dd/dd.c: revision 1.50
 bin/dd/Makefile: revision 1.18
 bin/dd/args.c: revision 1.39
 Add iflag and oflag operands to dd(1)
 
 Like GNU dd(1) similar operands, iflag and oflag allow specifying the
 O_* flags given to open(2) for the input and the output file. The values
 are comma-sepratated, lower-case, O_ prefix-stripped constants documented
 in open(2).
 
 Since iflag and oflag override default values, specifying oflag means
 O_CREATE is not set by default and must be specified explicitely.
 Some values do not make sense (e.g.: iflag=directory) but are still used
 and will raise a warning. For oflag, values rdonly, rdwr and wronly are
 filtered out with a warning (dd(1) attempts open(2) with O_RDWR and
 then O_WRONLY on failure).
 
 Specifying oflag=trunc along with (seek, oseek or conv=notrunc) is
 contradictory and will raise an error.
 
 iflag and oflag are disabled if building with -DMALLPROG
 
 New sentence, new line. Fix typos. Bump date for previous.
 
 | 
| 1.18.16.3 |  | 21-Apr-2020 | martin | Ooops, restore accidently removed files from merge mishap 
 | 
| 1.18.16.2 |  | 21-Apr-2020 | martin | Sync with HEAD 
 | 
| 1.18.16.1 |  | 13-Apr-2020 | martin | Mostly merge changes from HEAD upto 20200411 
 |