home *** CD-ROM | disk | FTP | other *** search
- From: jac@yoko.rutgers.edu (Jonathan A. Chandross)
- Newsgroups: comp.sources.apple2
- Subject: v001SRC040: Nulib - Archive Library Tools (Unix) 09/10
- Message-ID: <May.1.18.15.04.1991.23541@yoko.rutgers.edu>
- Date: 1 May 91 22:15:06 GMT
- Approved: jac@paul.rutgers.edu
-
-
- Submitted-by: Andy McFadden (fadden@cory.berkeley.edu)
- Posting-number: Volume 1, Source:40
- Archive-name: archive/unix/nulib/part09.10
- Architecture: UNIX
- Version-number: 3.03
-
-
- =nupak.h
- -/*
- - * nupak.h - declarations for nupak.c
- - *
- - * This has function declarations for all of the pack routines; that way we
- - * don't have to include .h files for all of the pack code.
- - *
- - * NuLib v3.0 February 1991 Freeware (distribute, don't sell)
- - * By Andy McFadden (fadden@cory.berkeley.edu)
- - */
- -
- -/* Pack/unpack buffer size; should be as big as read() & malloc() can take */
- -/* Note: must be AT LEAST 8200 bytes or things may break */
- -/* Bad things could happen if it's less than 12K */
- -#define PAKBUFSIZ 0xff80
- -
- -extern long packedSize;
- -extern onebyt lastseen;
- -
- -extern twobyt PackFile();
- -extern int UnpackFile(); /* BOOLEAN */
- -extern unsigned int crlf();
- -extern void Spin(),
- - FCopy();
- -
- -extern long pak_SHK(); /* pack P8 ShrinkIt format, in nushk.c */
- -extern void unpak_SQU(); /* unsqueeze, in nusq.c */
- -extern void unpak_SHK(); /* unShrink, in nushk.c */
- -
- =mkshk
- -#! /bin/csh
- -# Make NuLib shk file for download.
- -# Puts a copy of the files (without tabs and linefeeds) in ./trans, and then
- -# adds them to "nulib.shk"
- -#
- -# ("detab" converts tabs to spaces, "lfstrip" converts LF -> CR)
- -#
- -# This is intended as an example; it may or may not work on your system.
- -
- -echo "--- Converting tabs and linefeeds"
- -foreach file (README Benchmarks Makefile make.apw linkcom mkshk *.h *.c \
- - nulib.mak nulib.lnk)
- - echo $file
- - detab $file >! nul.tmp
- - lfstrip nul.tmp trans/$file
- -end
- -
- -rm nul.tmp
- -
- -cd trans
- -nulib cvftxt/0000 nulib.shk README Benchmarks Makefile nulib.mak nulib.lnk
- -nulib avfsrc/0006 nulib.shk make.apw mkshk
- -nulib avfsrc/0009 nulib.shk linkcom
- -nulib avfsrc/000a nulib.shk *.h *.c
- -cd ..
- -
- =nuview.h
- -/*
- - * nuview.h - declarations for nuview.c
- - *
- - * NuLib v3.0 February 1991 Freeware (distribute, don't sell)
- - * By Andy McFadden (fadden@cory.berkeley.edu)
- - */
- -
- -typedef enum { NAMEONLY, PROSHK, ARCZOO, FULL } outtype;
- -
- -/* constant string declarations */
- -extern char *unknownStr;
- -extern char *WD[];
- -extern char *MO[];
- -#define TCn 4
- -extern char *TC[];
- -#define TKn 3
- -extern char *TK[][TKn];
- -#define TFn 6
- -extern char *TF[];
- -#define BTFn 6
- -extern char *BTF[];
- -#define QTFn 6
- -extern char *QTF[];
- -#define FIDn 14
- -extern char *FID[];
- -#define STn 14
- -extern char *ST[];
- -extern char *FT[];
- -
- -extern void NuView();
- -extern char *PrintDate();
- -
- =make.apw
- -*
- -* NuLib AGE script (A pseudo-makefile for APW and ORCA)
- -*
- -
- -for file in numain nuread nuview nuadd nuext nupdel nupak nuetc nublu nushk nusq nucomp
- - age obj/{file}.root {file}.c
- - if {age} != 0
- - echo compiling {file}.c
- - delete obj/{file}.root
- - compile {file}.c keep=obj/{file}
- - end
- -end
- -
- -* Once everything is compiled, I test the final
- -* program file against the object modules that build it.
- -* If linking is required, it is performed next followed
- -* by a series of other statements to complete it:
- -
- -age cshk obj/=.root
- -purge
- -* if {age} != 0
- -* delete nulib
- -* prefix obj
- -* alink linker.scr
- -* prefix ..
- -* end
- =nuext.h
- -/*
- - * nuext.h - declarations for nuext.c
- - *
- - * NuLib v3.0 February 1991 Freeware (distribute, don't sell)
- - * By Andy McFadden (fadden@cory.berkeley.edu)
- - */
- -
- -#define MAXDEPTH 64 /* max subdir depth we will unpack */
- -
- -extern void NuExtract();
- -
- + END OF ARCHIVE
-