Date: Sun, 22 Jan 2006 04:05:07 -0500 (EST) From: "Jeffrey H. Johnson" <CPE1704TKS@bellsouth.net> To: FreeBSD-gnats-submit@FreeBSD.org Cc: CPE1704TKS@bellsouth.net Subject: ports/92144: [NEW PORT] sysutils/magtape: Generalized magnetic tape handling library and utilities Message-ID: <20060122090507.8AE0839833@offworld.cqasys.com> Resent-Message-ID: <200601220910.k0M9A2Iw070096@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 92144 >Category: ports >Synopsis: [NEW PORT] sysutils/magtape: Generalized magnetic tape handling library and utilities >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Jan 22 09:10:01 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Jeffrey H. Johnson >Release: FreeBSD 6.0-STABLE i386 >Organization: >Environment: System: FreeBSD offworld.cqasys.com 6.0-STABLE FreeBSD 6.0-STABLE #21: Wed Jan 18 22:35:45 EST 2006 >Description: This is the big daddy of all magtape handling packages. I looked for a newer version, but wasn't able to find anything past this 1982 release. Many warnings can be easily eliminated -- this port is being sent to allow out of box compilation and provide a needed Y2K fix to the sources. It works correctly on my systems. This port will be useful to people using emulators, such as SIMH. -x- magtape - a magnetic tape handling package. On the shell level this package offers programs for: - getting a quick look at a tape, - making exact copies of tapes even if you have only one magtape unit, - extracting arbitrary portions from tapes and - the reading and writing of ANSI standard labelled tapes. These programs work equally well on real tapes and on tape images on disk. On the C-level it supplies routines for handling real tapes and tape images on disk as a unified concept (generalized magtape). If you happen to have a Control Data Cyber around, running SCOPE or NOS/BE, "NOSsplit", a program for reading Cyber SI-format tapes, and "NOStr" which converts from various Cyber character codes, is provided. -x- Generated with FreeBSD Port Tools 0.63 >How-To-Repeat: >Fix: --- magtape-19820314.shar begins here --- # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # magtape # magtape/files # magtape/files/patch-aa # magtape/files/patch-ab # magtape/files/patch-ac # magtape/files/patch-ad # magtape/files/patch-ae # magtape/Makefile # magtape/distinfo # magtape/pkg-descr # magtape/pkg-plist # echo c - magtape mkdir -p magtape > /dev/null 2>&1 echo c - magtape/files mkdir -p magtape/files > /dev/null 2>&1 echo x - magtape/files/patch-aa sed 's/^X//' >magtape/files/patch-aa << 'END-of-magtape/files/patch-aa' X*** Makefile.orig Sun Jan 22 02:51:39 2006 X--- Makefile Sun Jan 22 03:57:02 2006 X*************** X*** 2,61 **** X # Written by Dick Grune, Vrije Universiteit, Amsterdam. X # X X # A system for handling magtapes, real or in tape image form. X # X! # make all: make all the shell commands and run a superficial test X! # make install: install all the shell commands X # make libt: install C-routine library X # make NOS: install NOSsplit et al. for reading Cyber tapes X # make man: install the manuals X # make lint: `lint' everything X # make clean: clean up the generated files X # X X # P A R A M E T E R S X! USR = /user1/dick X X BIN = $(USR)/bin# # where to store the binaries X LIB = $(USR)/lib# # where to store libt.a X! INC = $(USR)/src# # where to store tp.h for public use X! MAN1 = $(USR)/man# # where to store manual pages(1) X! MAN3 = $(USR)/man# # where to store manual pages(3) X X CC = cc# # the C compiler to be used X! CFLAGS = -O -s# # its flags X LINT = lint# # lint to be used, including flags X X # P U B L I C E N T R I E S X PRG = survey rawtp cptp ansir ansiw X NOS = NOSsplit NOStr X X all: $(PRG) $(NOS) test.image X! ./ansir -f test.image X! cmp READ_ME READ_ME.TEST X! rm READ_ME.TEST X X! install: $(PRG) X! for F in $(PRG); do cp $$F $(BIN)/$$F; done X X libt: tp.h libt.a X! cp tp.h $(INC)/tp.h X! cp libt.a $(LIB)/libt.a X X NOS: $(NOS) X! for F in $(NOS); do cp $$F $(BIN)/$$F; done X X # M A N U A L S X MAN1_SRC = ansir.1 ansiw.1 cptp.1 rawtp.1 survey.1 mag.1 \ X NOSsplit.1 NOStr.1 X MAN3_SRC = mag.3 X MAN_SRC = $(MAN1_SRC) $(MAN3_SRC) X X man: X! for F in $(MAN1_SRC); do cp $$F $(MAN1)/$$F; done X! for F in $(MAN3_SRC); do cp $$F $(MAN3)/$$F; done X X # L I B R A R Y X LIB_OBJ = tpread.o tpwrite.o tpopen.o tpclose.o tpname.o tperr.o \ X tploc.o tprdloc.o tpwloc.o tpwtmloc.o sys.o X LIB_SRC = tpread.c tpwrite.c tpopen.c tpclose.c tpname.c tperr.c \ X--- 2,66 ---- X # Written by Dick Grune, Vrije Universiteit, Amsterdam. X # X X # A system for handling magtapes, real or in tape image form. X # X! # make all: make all the shell commands X! # make install: install everything X! # make installc: install all the shell commands X # make libt: install C-routine library X # make NOS: install NOSsplit et al. for reading Cyber tapes X # make man: install the manuals X # make lint: `lint' everything X # make clean: clean up the generated files X # X X # P A R A M E T E R S X! USR = ${PREFIX} X X BIN = $(USR)/bin# # where to store the binaries X LIB = $(USR)/lib# # where to store libt.a X! INC = $(USR)/include# # where to store tp.h for public use X! MAN1 = $(USR)/man/man1# # where to store manual pages(1) X! MAN3 = $(USR)/man/man3# # where to store manual pages(3) X X CC = cc# # the C compiler to be used X! CFLAGS = -O# # its flags X LINT = lint# # lint to be used, including flags X X # P U B L I C E N T R I E S X PRG = survey rawtp cptp ansir ansiw X NOS = NOSsplit NOStr X X+ magtape: all X+ X all: $(PRG) $(NOS) test.image X! # ./ansir -f test.image X! # cmp READ_ME READ_ME.TEST X! # rm READ_ME.TEST X! X! install: installc NOS libt man X X! installc: $(PRG) X! for F in $(PRG); do install -s -m 755 $$F $(BIN)/$$F; done X X libt: tp.h libt.a X! install -m 644 tp.h $(INC)/tp.h X! install -m 644 libt.a $(LIB)/libt.a X X NOS: $(NOS) X! for F in $(NOS); do install -m 755 $$F $(BIN)/$$F; done X X # M A N U A L S X MAN1_SRC = ansir.1 ansiw.1 cptp.1 rawtp.1 survey.1 mag.1 \ X NOSsplit.1 NOStr.1 X MAN3_SRC = mag.3 X MAN_SRC = $(MAN1_SRC) $(MAN3_SRC) X X man: X! for F in $(MAN1_SRC); do install -m 644 $$F $(MAN1)/$$F; done X! for F in $(MAN3_SRC); do install -m 644 $$F $(MAN3)/$$F; done X X # L I B R A R Y X LIB_OBJ = tpread.o tpwrite.o tpopen.o tpclose.o tpname.o tperr.o \ X tploc.o tprdloc.o tpwloc.o tpwtmloc.o sys.o X LIB_SRC = tpread.c tpwrite.c tpopen.c tpclose.c tpname.c tperr.c \ END-of-magtape/files/patch-aa echo x - magtape/files/patch-ab sed 's/^X//' >magtape/files/patch-ab << 'END-of-magtape/files/patch-ab' X*** NOSsplit.c.orig Sun Jan 22 02:55:37 2006 X--- NOSsplit.c Sun Jan 22 02:55:46 2006 X*************** X*** 10,20 **** X #define MSGUSE "Usage is: NOSsplit [-cfhlm[s N]] [out_name]\n" X X #include <stdio.h> X #include "aux.h" X #include "tp.h" X! extern char *sprintf(); X X #define MINSIZE 6 /* smaller is a noise block */ X #define BSIZE 3840 /* blocksize binary files */ X #define CSIZE 960 /* blocksize coded files */ X #define SIZE 3840 /* maximum blocksize */ X--- 10,20 ---- X #define MSGUSE "Usage is: NOSsplit [-cfhlm[s N]] [out_name]\n" X X #include <stdio.h> X #include "aux.h" X #include "tp.h" X! /* extern char *sprintf(); */ X X #define MINSIZE 6 /* smaller is a noise block */ X #define BSIZE 3840 /* blocksize binary files */ X #define CSIZE 960 /* blocksize coded files */ X #define SIZE 3840 /* maximum blocksize */ END-of-magtape/files/patch-ab echo x - magtape/files/patch-ac sed 's/^X//' >magtape/files/patch-ac << 'END-of-magtape/files/patch-ac' X*** ansi.c.orig Sun Jan 22 02:54:15 2006 X--- ansi.c Sun Jan 22 02:55:25 2006 X*************** X*** 4,24 **** X X #include "aux.h" X #include "tp.h" X #include "ansi.h" X X! extern char *sprintf(); X X int unit = 0; X char *nmdns = TP_DENN; X TPFILE *tf = NULL; X X char filename[MAXSTR]; X FILE *file = NULL; X int filseqnum = 0; X int filsecnum = 1; X! char rectype[1] = 'F'; X struct format *recformat; X int blklength = 1920; X int reclength = 80; X int bufoffset = 0; X int reccount; X--- 4,24 ---- X X #include "aux.h" X #include "tp.h" X #include "ansi.h" X X! /* extern char *sprintf(); */ X X int unit = 0; X char *nmdns = TP_DENN; X TPFILE *tf = NULL; X X char filename[MAXSTR]; X FILE *file = NULL; X int filseqnum = 0; X int filsecnum = 1; X! char rectype[1] = "F"; X struct format *recformat; X int blklength = 1920; X int reclength = 80; X int bufoffset = 0; X int reccount; END-of-magtape/files/patch-ac echo x - magtape/files/patch-ad sed 's/^X//' >magtape/files/patch-ad << 'END-of-magtape/files/patch-ad' X*** sys.c.orig Sun Jan 22 03:33:52 2006 X--- sys.c Sun Jan 22 03:34:04 2006 X*************** X*** 26,36 **** X char * /* transient */ X sysdate() { /* today's date as YYDDD */ X time_t tnow = time((time_t*)0); X struct tm *timeptr = localtime(&tnow); X static char today[6]; X! X VOID(sprintf(today, "%02d%03d", X timeptr->tm_year, timeptr->tm_yday+1)); X return today; X } X X--- 26,37 ---- X char * /* transient */ X sysdate() { /* today's date as YYDDD */ X time_t tnow = time((time_t*)0); X struct tm *timeptr = localtime(&tnow); X static char today[6]; X! X! if (timeptr->tm_year > 100) timeptr->tm_year = timeptr->tm_year - 100; X VOID(sprintf(today, "%02d%03d", X timeptr->tm_year, timeptr->tm_yday+1)); X return today; X } X END-of-magtape/files/patch-ad echo x - magtape/files/patch-ae sed 's/^X//' >magtape/files/patch-ae << 'END-of-magtape/files/patch-ae' X*** tperr.c.orig Sun Jan 22 02:52:18 2006 X--- tperr.c Sun Jan 22 02:52:51 2006 X*************** X*** 5,15 **** X #include <stdio.h> X #include "aux.h" X #include "tp.h" X #include "tpsys.h" X X! FILE *tperr = stderr; X X tperrout(stream) X FILE *stream; X { X tperr = stream; X--- 5,15 ---- X #include <stdio.h> X #include "aux.h" X #include "tp.h" X #include "tpsys.h" X X! FILE *tperr = "stderr"; X X tperrout(stream) X FILE *stream; X { X tperr = stream; END-of-magtape/files/patch-ae echo x - magtape/Makefile sed 's/^X//' >magtape/Makefile << 'END-of-magtape/Makefile' X# New ports collection makefile for: magtape X# Date created: 22 January 2006 X# Whom: Jeffrey H. Johnson <CPE1704TKS@bellsouth.net> X# X# $FreeBSD: ports/sysutils/magtape/Makefile,v 1.00 2006/01/22 03:36:22 trn Exp $ X# X XPORTNAME= magtape XPORTVERSION= 19820314 XCATEGORIES= sysutils XMASTER_SITES= ftp://ftp.unicamp.br/pub/unix-c/tapes/ \ X http://ftp.br.xemacs.org/pub/unix-c/tapes/ XDISTNAME= magtape XEXTRACT_SUFX= .tar.Z X XMAINTAINER= CPE1704TKS@bellsouth.net XCOMMENT= Generalized magnetic tape handling library and utilities X XALL_TARGET= ${PORTNAME} XMAN1= NOSsplit.1 NOStr.1 ansir.1 ansiw.1 cptp.1 mag.1 rawtp.1 survey.1 XMAN3= mag.3 X X.include <bsd.port.mk> END-of-magtape/Makefile echo x - magtape/distinfo sed 's/^X//' >magtape/distinfo << 'END-of-magtape/distinfo' XSIZE (magtape.tar.Z) = 49987 XSHA256 (magtape.tar.Z) = f50f8d9eccc9dca913880b5fc0fabcca2dfbc9c9a664c2dac50c4fcd2f62b5b5 XMD5 (magtape.tar.Z) = 7e8b218e918a64d8d6247be0eb73d8de END-of-magtape/distinfo echo x - magtape/pkg-descr sed 's/^X//' >magtape/pkg-descr << 'END-of-magtape/pkg-descr' Xmagtape - a magnetic tape handling package. X XOn the shell level this package offers programs for: X X - getting a quick look at a tape, X - making exact copies of tapes even if you have only one magtape unit, X - extracting arbitrary portions from tapes and X - the reading and writing of ANSI standard labelled tapes. X XThese programs work equally well on real tapes and on tape images on disk. X XOn the C-level it supplies routines for handling real tapes and tape Ximages on disk as a unified concept (generalized magtape). X XIf you happen to have a Control Data Cyber around, running SCOPE or XNOS/BE, "NOSsplit", a program for reading Cyber SI-format tapes, and X"NOStr" which converts from various Cyber character codes, is provided. END-of-magtape/pkg-descr echo x - magtape/pkg-plist sed 's/^X//' >magtape/pkg-plist << 'END-of-magtape/pkg-plist' Xbin/NOSsplit Xbin/NOStr Xbin/ansir Xbin/ansiw Xbin/cptp Xbin/rawtp Xbin/survey Xinclude/tp.h Xlib/libt.a END-of-magtape/pkg-plist exit --- magtape-19820314.shar ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060122090507.8AE0839833>