jac@yoko.rutgers.edu (Jonathan A. Chandross) (05/02/91)
Submitted-by: Andy McFadden (fadden@cory.berkeley.edu) Posting-number: Volume 1, Source:39 Archive-name: archive/unix/nulib/part08.10 Architecture: UNIX Version-number: 3.03 =Makefile -# -# UNIX Makefile for NuLib v3.0 -# - -# To make a smaller executable, you can exclude the Binary II routines -# by setting CFLAGS= -DNO_BLU -# To exclude the UNIX compression routines, add -DNO_UCOMP - -# Select appropriate flag... -g for debugging, -O for optimized. -#CFLAGS=-g -CFLAGS=-O - -HDRS=nudefs.h nuread.h nuview.h nuadd.h nuext.h nupdel.h nupak.h nuetc.h \ - nublu.h nucomp.h nucompfn.h -SRCS=numain.c nuread.c nuview.c nuadd.c nuext.c nupdel.c nupak.c nuetc.c \ - nublu.c nucomp.c nushk.c nusq.c -OBJS=numain.o nuread.o nuview.o nuadd.o nuext.o nupdel.o nupak.o nuetc.o \ - nublu.o nucomp.o nushk.o nusq.o -ARCFILES=README Benchmarks Makefile make.apw linker.scr linked.scr mkshk \ - nulib.mak nulib.lnk *.h *.c - -LIBS= -#LIBS= -lx # For XENIX/386 users -CC=cc - -nulib: ${OBJS} - ${CC} ${CFLAGS} ${OBJS} -o nulib ${LIBS} - -numain.o: numain.c nudefs.h nuread.h nuview.h nuadd.h nuext.h nupdel.h nublu.h\ - nuetc.h - -nuread.o: nuread.c nudefs.h nuread.h nupak.h nuetc.h crc.h - -nuview.o: nuview.c nudefs.h nuview.h nuread.h nuetc.h - -nuadd.o: nuadd.c nudefs.h nuadd.h nuread.h nuadd.h nupak.h nuetc.h - -nuext.o: nuext.c nudefs.h nuext.h nuread.h nuext.h nupak.h nuetc.h - -nupdel.o: nupdel.c nudefs.h nupdel.h nuread.h nuadd.h nupak.h nupdel.h nuetc.h - -nupak.o: nupak.c nudefs.h nupak.h nuetc.h nucomp.h nucompfn.h - -nublu.o: nublu.c nudefs.h nublu.h nuview.h nuetc.h - -nushk.o: nushk.c nudefs.h nupak.h - -nusq.o: nusq.c nudefs.h nupak.h - -nuetc.o: nuetc.c nudefs.h nuetc.h - -nucomp.o: nucomp.c nudefs.h nucomp.h nucompfn.h nuetc.h - -# shar version 3.21 -# -c : add "cut here" line at top -# -o : base name for output files -# -l48 : max size is 48KB, but don't split files -# -v : (not used) turn off verbose msgs -shar: - shar349 -c -osh.files/nulib -l48 $(ARCFILES) - -tar: - tar cvf nulib.tar $(ARCFILES) - =nulib.mak - # NuLib v3.02 makefile for Microsoft C - #=================================================================== - # - # Standard command line definitions - # - # Note /DIAPX286 can also be used, but it is not a real indicator - # of the system hardware - # - # Leaving out the /W3 will reduce the flood of warning messages. - # - #=================================================================== - - #cp=cl /c /AL /W3 /Ot /Zpei /DIAPX386 - cp=cl /c /AL /W3 /Os /Zpei /DIAPX386 - - #=================================================================== - # - # Default inference rules - # - #=================================================================== - - .c.obj: - $(cp) $*.c - - #=================================================================== - # - # Dependencies - # - #=================================================================== - - nuadd.obj: nuadd.c nudefs.h nuread.h nuview.h nuadd.h nupak.h nuetc.h - - nublu.obj: nublu.c nudefs.h nuview.h nuadd.h nupak.h nuetc.h - - nuetc.obj: nuetc.c nudefs.h apwerr.h nuetc.h - - nuext.obj: nuext.c nudefs.h nuread.h nuext.h nupak.h nuetc.h - - numain.obj: numain.c nudefs.h nuread.h nuview.h nuadd.h nuext.h nupdel.h \ - nublu.h nupak.h nuetc.h - - nupak.obj: nupak.c nudefs.h nupak.h nuetc.h nucomp.h compfns.h - - nupdel.obj: nupdel.c nudefs.h nuread.h nuadd.h nupak.h nupdel.h nuetc.h - - nuread.obj: nuread.c nudefs.h crc.h nuread.h nupak.h nuetc.h - - nushk.obj: nushk.c nudefs.h nuread.h nupak.h nuetc.h - - nusq.obj: nusq.c nudefs.h nuetc.h - - nuview.obj: nuview.c - -nucomp.obj: nucomp.c nudefs.h nucomp.h nucompfn.h - - NULIB.exe: nuadd.obj nublu.obj nuetc.obj nuext.obj numain.obj nupak.obj \ - nupdel.obj nuread.obj nushk.obj nusq.obj nuview.obj nucomp.obj - link @NuLib.lnk - =linked.scr -; APW LinkEd script file for NuLib -; -; Does not search for segments with blank load segment names. -; Does not search files for DIRECT segments (only the CLIB). -; Does not search any libraries other than 2/clib. - -keep ../nulib - -* This is the main code segment (type = code) -segment/$00 main - loadselect 2/start.root main - loadselect numain.root main - loadselect nuread.root main - loadselect nuetc.root main - loadselect nuview.root main - loadselect nuadd.root main - loadselect nuext.root main - loadselect nupdel.root main - library/loadselect 2/clib main - -* This contains compression/Binary II code (type = dynamic) -segment/dynamic Compress - loadselect nupak.root main - loadselect nublu.root main - loadselect nucomp.root main - loadselect nushk.root main - loadselect nusq.root main - library/loadselect 2/clib main - -* This contains all global definitions (type = private data) -segment/$41 Globals - loadselect 2/start.roott ~globals - loadselect nupak.root ~globals - loadselect nublu.root ~globals - loadselect nucomp.root ~globals - loadselect nushk.root ~globals - loadselect n ~arrays - loadselect nuview.root ~arrays - loadselect nuadd.root ~arrays - loadselect nuext.root ~arrays - loadselect nupdel.root ~arrays - loadselect nupak.root ~arrays - loadselect nublu.root ~arrays - loadselect nucomp.root ~arrays - loadselect nushk.root ~arrays - loadselect nusq.root ~arrays - library/loadselect 2/clib ~arrays - -* This has direct page stuff, like the stack -segment/$12 Direct (type = direct-page/stack) - library/loadselect 2/clib DIRECT - -list on -* One other segment, SEGJPTBL, appears here... =nuetc.h -/* - * nuetc.h - declarations for nuetc.c - * - * (this will be included by almost all source files; it should come last) - * - * NuLib v3.0 February 1991 Freeware (distribute, don't sell) - * By Andy McFadden (fadden@cory.berkeley.edu) - */ - -/* define these if they haven't been already */ -/* (typedef int BOOLEAN caused too many problems... #define is easier) */ -#ifndef BOOLEAN -# define BOOLEAN int -#endif - -#ifndef TRUE -# define TRUE 1 -# define FALSE 0 -#endif - -#ifdef UNIX -# ifdef BSD43 - extern char *index(); /* BSD version */ - extern char *rindex(); -# define INDEX(s, c) index(s, c) -# define RINDEX(s, c) rindex(s, c) -# else - extern char *strchr(); /* AT&T version */ - extern char *strrchr(); -# define INDEX(s, c) strchr(s, c) -# define RINDEX(s, c) strrchr(s, c) -# endif -#else - extern char *strchr(); /* APW, MSC */ - extern char *strrchr(); -# define INDEX(s, c) strchr(s, c) -# define RINDEX(s, c) strrchr(s, c) -#endif - -extern char tmpNameBuf[]; - -/* external function declarations */ -extern void Fatal(), - Quit(); -extern void free(); -extern char *Malloc(); - -#ifdef APW -extern void ToolErrChk(), - perror(); -#endif - -extern int strcasecmp(), - strncasecmp(); - -extern void ArcfiCreate(), - Rename(); -extern BOOLEAN Exists(); -extern char *MakeTemp(); - -extern void ExpandTime(); -extern long ReduceTime(); -extern Time *GetTime(); - =nuadd.h -/* - * nuadd.h - declarations for nuadd.c - * - * NuLib v3.0 February 1991 Freeware (distribute, don't sell) - * By Andy McFadden (fadden@cory.berkeley.edu) - */ - -/* information is copied from file-dependent structures (FileRec) to here */ -typedef struct { - char *pathname; /* as much of the path as we need to know */ - char *store_name; /* what name the file will be stored under */ - fourbyt eof; /* length of file */ - fourbyt fAccess; /* was Word */ - fourbyt fileType; /* was Word */ - fourbyt auxType; - twobyt storageType; - Time create_dt; /* Time = TimeRec = 8 bytes in misctool.h/nuread.h */ - Time mod_dt; - twobyt fileSysID; /* these two are non-standard */ - onebyt fileSysInfo; - int marked; /* application specific */ -} file_info; - -#define MAXARGS 255 /* max #of files specified on command line; signed int */ - -extern void NuAdd(); -extern long AddFile(); -extern onebyt *MakeMHblock(); -extern int EvalArgs(); - + END OF ARCHIVE