summaryrefslogtreecommitdiffstats
path: root/contrib/bzip2/spewG.c
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2001-06-21 18:37:17 +0000
committerobrien <obrien@FreeBSD.org>2001-06-21 18:37:17 +0000
commitda41d3ce6ee0a7c399e6438525caf651b761080b (patch)
treedd474847b5cb872a4c00011987d2276b9e7075d0 /contrib/bzip2/spewG.c
downloadFreeBSD-src-da41d3ce6ee0a7c399e6438525caf651b761080b.zip
FreeBSD-src-da41d3ce6ee0a7c399e6438525caf651b761080b.tar.gz
Virgin import (trimmed) of Bzip2 version 1.0.1.
Diffstat (limited to 'contrib/bzip2/spewG.c')
-rw-r--r--contrib/bzip2/spewG.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/contrib/bzip2/spewG.c b/contrib/bzip2/spewG.c
new file mode 100644
index 0000000..7934e76
--- /dev/null
+++ b/contrib/bzip2/spewG.c
@@ -0,0 +1,39 @@
+
+/* spew out a thoroughly gigantic file designed so that bzip2
+ can compress it reasonably rapidly. This is to help test
+ support for large files (> 2GB) in a reasonable amount of time.
+ I suggest you use the undocumented --exponential option to
+ bzip2 when compressing the resulting file; this saves a bit of
+ time. Note: *don't* bother with --exponential when compressing
+ Real Files; it'll just waste a lot of CPU time :-)
+ (but is otherwise harmless).
+*/
+
+#define _FILE_OFFSET_BITS 64
+
+#include <stdio.h>
+#include <stdlib.h>
+
+/* The number of megabytes of junk to spew out (roughly) */
+#define MEGABYTES 5000
+
+#define N_BUF 1000000
+char buf[N_BUF];
+
+int main ( int argc, char** argv )
+{
+ int ii, kk, p;
+ srandom(1);
+ setbuffer ( stdout, buf, N_BUF );
+ for (kk = 0; kk < MEGABYTES * 515; kk+=3) {
+ p = 25+random()%50;
+ for (ii = 0; ii < p; ii++)
+ printf ( "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" );
+ for (ii = 0; ii < p-1; ii++)
+ printf ( "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" );
+ for (ii = 0; ii < p+1; ii++)
+ printf ( "ccccccccccccccccccccccccccccccccccccc" );
+ }
+ fflush(stdout);
+ return 0;
+}
OpenPOWER on IntegriCloud