diff -w -u -r /tmp/avrdude-5.1/main.c ./main.c
--- /tmp/avrdude-5.1/main.c	2006-01-17 13:11:39.000000000 -0800
+++ ./main.c	2006-04-03 09:11:52.000000000 -0700
@@ -709,6 +709,13 @@
   char  * homedir;
 #endif
 
+  /*
+   * Set line buffering for file descriptors so we see stdout and stderr
+   * properly interleaved.
+   */
+  setvbuf(stdout, (char*)NULL, _IOLBF, 0);
+  setvbuf(stderr, (char*)NULL, _IOLBF, 0);
+
   progname = strrchr(argv[0],'/');
 
 #if defined (WIN32NATIVE)
