From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- sys-block/buffer/Manifest | 6 + sys-block/buffer/buffer-1.19-r2.ebuild | 32 +++ sys-block/buffer/files/1.19-deb-gentoo.patch | 293 +++++++++++++++++++++++++++ sys-block/buffer/metadata.xml | 8 + 4 files changed, 339 insertions(+) create mode 100644 sys-block/buffer/Manifest create mode 100644 sys-block/buffer/buffer-1.19-r2.ebuild create mode 100644 sys-block/buffer/files/1.19-deb-gentoo.patch create mode 100644 sys-block/buffer/metadata.xml (limited to 'sys-block/buffer') diff --git a/sys-block/buffer/Manifest b/sys-block/buffer/Manifest new file mode 100644 index 000000000000..2bfed8b62d8d --- /dev/null +++ b/sys-block/buffer/Manifest @@ -0,0 +1,6 @@ +AUX 1.19-deb-gentoo.patch 8422 SHA256 51a2495dfdc8b61af9a4856a8d247a735ae4f8c3ebd9969c6f3f925707d6d999 SHA512 791d7990f900d70a229d77ea0eda67c99ea81697ca65f83bceea1131d0d5da94484c796ad601d8031da72fe24b2add6b0e4e86956c0ddb2fbe76cee6574ccb34 WHIRLPOOL 14af02480a73133e712399d4b0f2d455cd3db17c38a9643fa53d05386626292df897dc06d9de12a516f54d2756ef9797410159e0b5668e6ea9934b38b6822f38 +DIST buffer-1.19.tgz 34960 SHA256 ec7da9f9737cd03c11a26f8380ab7d567b252b862b989da430b1e92db79b42c8 SHA512 9321f6e399cb3e58f3ffebb031b4d2b2fdda26149fb142515961a09b81b47c1bce01dd770da579bf49c3e71f8cee29c5dc2cc4063e67494e98a599f29076cc5c WHIRLPOOL 47de346dd1d546b8da7861d33e46d2697e88c55b3c7ee823ce6938db3c1c987b7f8d4636d3e7ca1a1d5210bdf0bec68f2ebe9b2652abb6893c36ccb4241d47bd +EBUILD buffer-1.19-r2.ebuild 677 SHA256 7a1aee0262ccdc34bbdcb1306d131d563c25ed84af15455e29d39642e69153be SHA512 57d4eff4a4babbff749f0f8fe837835711fd50cb31d27796fa6513bbbe9353f40af6e1f0678f955ae58b5f1ae9ed8635602d2f6491fac823b6c8350158877c1a WHIRLPOOL 5ceadafc9203d04954a9d452706b025bb6b482083342a0281636995c3e76f1f056f5363e60a207d8a3ae5fc8f53e797e172e4b7c3eb2c2b8714eeff7d8be8033 +MISC ChangeLog 2958 SHA256 2cbd6c98f952052e67a294fd8bd60d8c91028dd6ce6c977dfcdfc9b7e7a7127f SHA512 dd931a53c539f76f272a197112d79190a2008a9330aa08124858707825ff2e635ee94cc504b7b57946aceb2b3771fc4bccdb958343446690f79c61633930be64 WHIRLPOOL 957b695988016414fd6ca8586058eec7158c0fa05e00f5ec292917009c1fdf6c74043d4fe8d4c2b271dfc0b35883615b81a68295b003b7aa8c8d88b1cfc557fe +MISC ChangeLog-2015 2058 SHA256 224ca7017eddcc4bf97a46cf75a34cbf01e6829b55cec8fad0a36b64f6949ffd SHA512 82474da2bfc07d3da149b08da15792940d139fe4231f132cc3c98cac7c62fc5c5dd83ff8555f3f9b439ba80d4486adad4da587186a5c9eba23c7d77122575568 WHIRLPOOL 60739ad361b889c50bb3a9dc6d81032d70894291233c64268fb25760c8ed79c570dc67f7ea7cecd54abb335d908d98b21c1adccda118ccf5076a90b691293f55 +MISC metadata.xml 253 SHA256 d82c33ef453113a5c1ebe250dcba373c22934a69b0a86c6ab15a5ca589c25b91 SHA512 54a9069aeb4165d2dff3d473c8001bc51613aac9dff3f7f5e9971a9891a737a31511ffa11cbd523febe581ac1d9de2bdf2f40410f0c4239138f2ccca3ef15555 WHIRLPOOL e5aee23acff864609953a1e4de768f0e4aef704b44c53c021f28573e1ca5c99f1a46d92935ecec2449f7b4419a36d8373127d0ecfa8d7bae72d835e1839eb3f8 diff --git a/sys-block/buffer/buffer-1.19-r2.ebuild b/sys-block/buffer/buffer-1.19-r2.ebuild new file mode 100644 index 000000000000..92729884d174 --- /dev/null +++ b/sys-block/buffer/buffer-1.19-r2.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=4 + +inherit eutils flag-o-matic toolchain-funcs + +DESCRIPTION="a tapedrive tool for speeding up reading from and writing to tape" +HOMEPAGE="http://www.microwerks.net/~hugo/" +SRC_URI="mirror://gentoo/${P}.tgz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 arm ppc sparc x86" +IUSE="" + +src_prepare() { + epatch "${FILESDIR}"/${PV}-deb-gentoo.patch + sed -i -e 's/$(CFLAGS)/\0 $(LDFLAGS)/' Makefile || die + emake clean +} + +src_compile() { + append-lfs-flags + emake CC="$(tc-getCC)" CFLAGS="${CFLAGS}" +} + +src_install() { + dobin buffer + dodoc README + newman buffer.man buffer.1 +} diff --git a/sys-block/buffer/files/1.19-deb-gentoo.patch b/sys-block/buffer/files/1.19-deb-gentoo.patch new file mode 100644 index 000000000000..66ea66433bc6 --- /dev/null +++ b/sys-block/buffer/files/1.19-deb-gentoo.patch @@ -0,0 +1,293 @@ +diff -ur buffer-1.19.orig/buffer.c buffer-1.19/buffer.c +--- buffer-1.19.orig/buffer.c 2004-08-21 01:45:29.938082048 -0400 ++++ buffer-1.19/buffer.c 2004-08-21 01:45:39.444118464 -0400 +@@ -109,6 +109,9 @@ + * Initial revision + * + */ ++#include ++#include ++#include + #include + #include + #include +@@ -120,6 +123,7 @@ + #include + #include + #include ++#include + #include "sem.h" + + #ifndef lint +@@ -127,8 +131,8 @@ + #endif + +-#ifndef __alpha ++#ifndef __linux__ + extern char *shmat(); +-#endif /* __alpha */ ++#endif /* __linux__ */ + + /* General macros */ + #define TRUE 1 +@@ -136,6 +140,14 @@ + #define K *1024 + #define M *1024*1024 + ++#if defined __GNUC__ || __STDC_VERSION__ >= 199901L ++#define NUM_K_TYPE unsigned long long ++#define NUM_K_FMT "llu" ++#else ++#define NUM_K_TYPE unsigned long ++#define NUM_K_FMT "lu" ++#endif ++ + /* Some forward declarations */ + void byee(); + void start_reader_and_writer(); +@@ -250,7 +262,9 @@ + + char print_total = 0; + /* Number of K output */ +-unsigned long outk = 0; ++NUM_K_TYPE outk = 0; ++ ++struct timeval starttime; + + int + main( argc, argv ) +@@ -262,6 +276,8 @@ + set_handlers(); + + buffer_allocate(); ++ ++ gettimeofday(&starttime, NULL); + + start_reader_and_writer(); + +@@ -384,8 +400,8 @@ + fprintf( stderr, "Usage: %s [-B] [-t] [-S size] [-m memsize] [-b blocks] [-p percent] [-s blocksize] [-u pause] [-i infile] [-o outfile] [-z size]\n", + progname ); + fprintf( stderr, "-B = blocked device - pad out last block\n" ); +- fprintf( stderr, "-t = show total amount writen at end\n" ); +- fprintf( stderr, "-S size = show amount writen every size bytes\n" ); ++ fprintf( stderr, "-t = show total amount written at end\n" ); ++ fprintf( stderr, "-S size = show amount written every size bytes\n" ); + fprintf( stderr, "-m size = size of shared mem chunk to grab\n" ); + fprintf( stderr, "-b num = number of blocks in queue\n" ); + fprintf( stderr, "-p percent = don't start writing until percent blocks filled\n" ); +@@ -397,6 +413,11 @@ + byee( -1 ); + } + } ++ ++ if (argc > optind) { ++ fprintf( stderr, "too many arguments\n" ); ++ byee( -1 ); ++ } + + if (zflag) showevery = blocksize; + +@@ -507,9 +528,9 @@ + get_buffer(); + + if( debug ) +- fprintf( stderr, "%s pbuffer is 0x%08x, buffer_size is %d [%d x %d]\n", ++ fprintf( stderr, "%s pbuffer is 0x%08lx, buffer_size is %d [%d x %d]\n", + proc_string, +- (char *)pbuffer, buffer_size, blocks, blocksize ); ++ (unsigned long)pbuffer, buffer_size, blocks, blocksize ); + + #ifdef SYS5 + memset( (char *)pbuffer, '\0', buffer_size ); +@@ -528,7 +549,17 @@ + pbuffer->blocks_free_lock = 1; + /* start this off so lock() can be called on it for each block + * till all the blocks are used up */ ++ /* Initializing the semaphore to "blocks - 1" causes a hang when using option ++ * "-p 100" because it always keeps one block free, so we'll never reach 100% fill ++ * level. However, there doesn't seem to be a good reason to keep one block free, ++ * so we initialize the semaphore to "blocks" instead. ++ * 2004-01-11 ++ */ ++#if 0 + sem_set( pbuffer->semid, pbuffer->blocks_free_lock, blocks - 1 ); ++#else ++ sem_set( pbuffer->semid, pbuffer->blocks_free_lock, blocks ); ++#endif + + /* Detattach the shared memory so the fork doesnt do anything odd */ + shmdt( (char *)pbuffer ); +@@ -648,7 +679,7 @@ + int + fill_block() + { +- int bytes; ++ int bytes = 0; + char *start; + int toread; + static char eof_reached = 0; +@@ -707,7 +738,7 @@ + { + int filled = 0; + int maxfilled = (blocks * percent) / 100; +- int first_block; ++ int first_block = 0; + + if( debug ) + fprintf( stderr, "\tW: Entering writer\n blocks = %d\n maxfilled = %d\n", +@@ -742,7 +773,7 @@ + } + + if( print_total ){ +- fprintf( stderr, "Kilobytes Out %lu\n", outk ); ++ fprintf( stderr, "Kilobytes Out %" NUM_K_FMT "\n", outk ); + } + + if( debug ) +@@ -783,14 +814,14 @@ + void + write_block_to_stdout() + { +- static unsigned long out = 0; ++ unsigned long out = 0; + static unsigned long last_gb = 0; +- static unsigned long next_k = 0; ++ static NUM_K_TYPE next_k = 0; + int written; + + if( next_k == 0 && showevery ){ + if( debug > 3 ) +- fprintf( stderr, "W: next_k = %lu showevery = %d\n", next_k, showevery ); ++ fprintf( stderr, "W: next_k = %" NUM_K_FMT " showevery = %d\n", next_k, showevery ); + showevery = showevery / 1024; + next_k = showevery; + } +@@ -798,7 +829,7 @@ + if( (written = write( fdout, curr_block->data, curr_block->bytes )) != curr_block->bytes ){ + report_proc(); + perror( "write of data failed" ); +- fprintf( stderr, "bytes to write=%d, bytes written=%d, total written %10luK\n", curr_block->bytes, written, outk ); ++ fprintf( stderr, "bytes to write=%d, bytes written=%d, total written %10" NUM_K_FMT "K\n", curr_block->bytes, written, outk ); + byee( -1 ); + } + +@@ -825,7 +856,7 @@ + } + if( showevery ){ + if( debug > 3 ) +- fprintf( stderr, "W: outk = %lu, next_k = %lu\n", ++ fprintf( stderr, "W: outk = %" NUM_K_FMT ", next_k = %" NUM_K_FMT "\n", + outk, next_k ); + if( outk >= next_k ){ + pr_out(); +@@ -914,13 +945,12 @@ + do_size( arg ) + char *arg; + { +- char format[ 20 ]; +- int ret; ++ int ret = 0; + +- *format = '\0'; +- sscanf( arg, "%d%s", &ret, format ); ++ char unit = '\0'; ++ sscanf( arg, "%d%c", &ret, &unit ); + +- switch( *format ){ ++ switch( unit ){ + case 'm': + case 'M': + ret = ret K K; +@@ -941,7 +971,36 @@ + void + pr_out() + { +- fprintf( stderr, " %10luK\r", outk ); ++ struct timeval now; ++ unsigned long ms_delta, k_per_s; ++ ++ gettimeofday(&now, NULL); ++ ms_delta = (now.tv_sec - starttime.tv_sec) * 1000 ++ + (now.tv_usec - starttime.tv_usec) / 1000; ++ if (ms_delta) { ++ /* Use increased accuracy for small amounts of data, ++ * decreased accuracy for *huge* throughputs > 4.1GB/s ++ * to avoid division by 0. This will overflow if your ++ * machine's throughput exceeds 4TB/s - you deserve to ++ * loose if you're still using 32 bit longs on such a ++ * beast ;-) ++ * ++ */ ++ if (outk < ULONG_MAX / 1000) { ++ k_per_s = (outk * 1000) / ms_delta; ++ } else if (ms_delta >= 1000) { ++ k_per_s = outk / (ms_delta / 1000); ++ } else { ++ k_per_s = (outk / ms_delta) * 1000; ++ } ++ fprintf( stderr, " %10" NUM_K_FMT "K, %10luK/s\r", outk, k_per_s ); ++ } else { ++ if (outk) { ++ fprintf( stderr, " %10" NUM_K_FMT "K, ?K/s\r", outk ); ++ } else { ++ fprintf( stderr, " 0K, 0K/s\r"); ++ } ++ } + } + + #ifdef SYS5 +diff -ur buffer-1.19.orig/buffer.man buffer-1.19/buffer.man +--- buffer-1.19.orig/buffer.man 2004-08-21 01:45:29.935085504 -0400 ++++ buffer-1.19/buffer.man 2004-08-21 01:45:39.441121920 -0400 +@@ -37,7 +37,8 @@ + Use the given file as the output file. The default is stdout. + .TP + .B \-S size +-After every chunk this size has been writen print out how much been writen so far. ++After every chunk of this size has been written, print out how much has ++been written so far. Also prints the total througput. + By default this is not set. + .TP + .B \-s size +@@ -71,9 +72,9 @@ + throughput on some drives.) + .TP + .B \-B +-Force each block writen to be padded out to the blocksize. This is needed by some tape ++Force each block written to be padded out to the blocksize. This is needed by some tape + and cartridge drives. Defaults to unpadded. This only affects the +-last block writen. ++last block written. + .TP + .B \-t + On exiting print to stderr a brief message showing the total number of +@@ -82,7 +83,7 @@ + .B \-Z + If reading/writing directly to a character device (like a tape drive) + then after each gigabyte perform an lseek to the start of the file. +-Use this flag with extreme care. If can only be used on devices where ++Use this flag with extreme care. It can only be used on devices where + an lseek does not rewind the tape but does reset the kernels position + flags. It is used to allow more than 2 gigabytes to be written. + .PP +diff -ur buffer-1.19.orig/sem.c buffer-1.19/sem.c +--- buffer-1.19.orig/sem.c 2004-08-21 01:45:29.939080896 -0400 ++++ buffer-1.19/sem.c 2004-08-21 01:47:41.265618240 -0400 +@@ -27,6 +27,7 @@ + * semaphores */ + + #include ++#include + #include + #include + #include +@@ -95,7 +96,7 @@ + return sem; + } + +-static ++static void + do_sem( sem_id, pbuf, err ) + int sem_id; + struct sembuf *pbuf; diff --git a/sys-block/buffer/metadata.xml b/sys-block/buffer/metadata.xml new file mode 100644 index 000000000000..56c124413057 --- /dev/null +++ b/sys-block/buffer/metadata.xml @@ -0,0 +1,8 @@ + + + + + base-system@gentoo.org + Gentoo Base System + + -- cgit v1.2.3