Path: utzoo!attcan!uunet!cs.utexas.edu!tut.cis.ohio-state.edu!ucbvax!bloom-beacon!husc6!rutgers!njin!princeton!notecnirp!nfs From: nfs@notecnirp.Princeton.EDU (Norbert Schlenker) Newsgroups: comp.os.minix Subject: Another new stdio (part 1 of 4) Summary: Installation scripts and makefiles Message-ID: <19735@princeton.Princeton.EDU> Date: 30 Sep 89 16:06:17 GMT Sender: news@princeton.Princeton.EDU Reply-To: nfs@notecnirp.UUCP (Norbert Schlenker) Organization: Dept. of Computer Science, Princeton University Lines: 341 echo x - Install sed '/^X/s///' > Install << '/' X#!/bin/sh X# Run with appropriate permissions. X# Assumes entire package is unpacked in ${MAKEDIR}. X# Before running, modify the following to reflect what you want. X X# Should be an absolute directory with sufficient size to hold the X# packaged source and the accompanying object files. XMAKEDIR=/usr/nfs/lib X X# Should be an absolute directory with sufficient size to hold all X# !!!EXISTING!!! library objects. Must be different than MAKEDIR. XTMPDIR=/usr/nfs/tmp X X# Should be the existing location of standard headers. XINCLUDE=/usr/include X X# Should be the existing location of the C library. XLIB=/usr/lib X X# Should be the C library name. XLIBC=libc.a X X# Old include files will have this suffix added to their names. X# Old library will be moved to its existing name plus this suffix. XSUFFIX=.orig X X# Change to reflect what you want. X# -LIB -D_MINIX should always be there (for the ACK compiler). X# -D_V7 is required if you don't have Simon Poole's FS patches. X# -Di8088/-DATARI_ST must be specified to describe the target machine. X# -DNDEBUG if you want no debugging in the library routines. X# -D_SAFEMACRO if you want a few extra ctype/stdio macros for speed. X XCFLAGS='-LIB -D_MINIX -D_V7 -Di8088 -DNDEBUG -D_SAFEMACRO' X Xif test ${TMPDIR} = ${MAKEDIR} Xthen Xecho Please change either TMPDIR or MAKEDIR. Xexit Xfi X X# Save old library routines. Xecho Saving old library ${LIBC} as ${LIB}/${LIBC}${SUFFIX} Xif mv ${LIB}/${LIBC} ${LIB}/${LIBC}${SUFFIX} Xthen echo Xelse echo "Couldn't save original ${LIBC}" Xexit Xfi X X# Extract existing routines. Xecho Extracting existing library routines. Xcd ${TMPDIR} Xar x ${LIB}/${LIBC}${SUFFIX} X X# Install new include files. Xecho "Installing new headers in ${INCLUDE}; old ones saved with suffix ${SUFFIX}" Xcd ${MAKEDIR} Xmv stdiolib.h stdiolib.H # Don't install these two in ${INCLUDE} Xmv lib.h lib.H Xfor i in *.h Xdo if test -f ${INCLUDE}/${i} Xthen mv ${INCLUDE}/${i} ${INCLUDE}/${i}${SUFFIX} Xfi Xdone Xmv *.h ${INCLUDE} Xmv stdiolib.H stdiolib.h Xmv lib.H lib.h Xcd sys Xfor i in *.h Xdo if test -f ${INCLUDE}/${i} Xthen mv ${INCLUDE}/sys/${i} ${INCLUDE}/sys/${i}${SUFFIX} Xfi Xdone Xmv *.h ${INCLUDE}/sys X X# Make new library routines. Xecho Making new library routines. Xcd ${MAKEDIR} Xif make CFLAGS="${CFLAGS}" objects Xthen echo Make complete. Xelse echo Make aborted. Xexit Xfi X X# Install new library routines. Xecho Installing new routines in ${LIB}/${LIBC}. Xcd ${MAKEDIR} Xfor i in *.s Xdo rm -f ${TMPDIR}/${i}; mv ${i} ${TMPDIR} Xdone Xcd ${TMPDIR} # Remove some extra hangers on. Xrm -f atoi.s atol.s cleanup.s doprintf.s fprintf.s printdat.s puts.s vsprintf.s Xmake -f ${MAKEDIR}/Makefile.libc TARGET=${LIBC} Xmv ${LIBC} ${LIB} X X# Clean up. Xrm .Made Xrm -f [a-e]*.s Xrm -f [f-j]*.s Xrm -f [k-o]*.s Xrm -f [p-t]*.s Xrm -f [u-z]*.s Xecho Installation complete. Xecho Xecho All the new sources can be found in ${MAKEDIR} - save them in an Xecho appropriate location. Be sure to save "lib.h" and "stdiolib.h". / echo x - Makefile sed '/^X/s///' > Makefile << '/' XCFLAGS = -LIB -D_MINIX -D_V7 -Di8088 -DNDEBUG -D_SAFEMACRO X XSTDIO = _bufproc.s _cleanup.s _doprnt.s _doscan.s _filbuf.s _flsbuf.s \ X _flspbuf.s _iobdata.s _iobproc.s _ioinit.s _valmode.s \ X atexit.s exit.s fclose.s fdopen.s fflush.s \ X fgetc.s fgets.s fopen.s fputc.s fputs.s fread.s \ X freopen.s fseek.s ftell.s fwrite.s gets.s perror.s \ X printf.s remove.s rename.s scanf.s setvbuf.s \ X sprintf.s sscanf.s stdio_misc.s tmpfile.s tmpnam.s ungetc.s X XSTDLIB = div.s ldiv.s strtol.s strtoul.s X XCTYPE = ctype.s X XOTHERS = printk.s prints.s cuserid.s getlogin.s getgrent.s getpwent.s X Xobjects: $(STDIO) $(STDLIB) $(CTYPE) $(OTHERS) X Xcrclist: X crc I* M* >crclist X crc *.h >>crclist X crc sys/*.h >>crclist X crc *.c >>crclist / echo x - Makefile.libc sed '/^X/s///' > Makefile.libc << '/' XCURSES = curses.s termcap.s X XMISCELLANEOUS = getpass.s lock.s popen.s putenv.s getopt.s stderr.s \ X itoa.s ffs.s swab.s stb.s getutil.s portio.s X XANSI_UNISTD = ctermid.s cuserid.s execlp.s getcwd.s getlogin.s \ X getgrent.s getpwent.s ttyname.s X XIOCTL = gtty.s stty.s ioctl.s X XAMOEBA = uniqport.s amoeba.s X XTIME = ctime.s X XSTRERROR = strerror.s X XSTDIO = fclose.s fdopen.s fopen.s freopen.s tmpfile.s _valmode.s \ X scanf.s sscanf.s _doscan.s \ X fgets.s fread.s gets.s fgetc.s ungetc.s _filbuf.s \ X printf.s sprintf.s _doprnt.s \ X fputs.s fwrite.s fputc.s _flsbuf.s \ X fseek.s ftell.s perror.s setvbuf.s stdio_misc.s tmpnam.s \ X _ioinit.s _cleanup.s fflush.s _flspbuf.s \ X _bufproc.s _iobproc.s _iobdata.s \ X remove.s rename.s X XNOT_STDIO = mktemp.s printk.s prints.s X XSTDLIB = abort.s abs.s atexit.s bsearch.s div.s getenv.s ldiv.s \ X malloc.s qsort.s rand.s strtol.s strtoul.s system.s \ X lrand.s lsearch.s X XCTYPE = ctype.s X XDIRENT = opendir.s closedir.s telldir.s rewinddir.s seekdir.s readdir.s \ X getdents.s X XSETJMP = setjmp.s X XREGEXP = regexp.s regsub.s X XSTRING_BSD = bcmp.s bcopy.s bzero.s XSTRING_SYSV = index.s rindex.s XSTRING = $(STRING_BSD) $(STRING_SYSV) \ X memccpy.s memchr.s memcmp.s memcpy.s memset.s \ X strstr.s strcat.s strchr.s strcmp.s strcpy.s strcspn.s strlen.s \ X strncat.s strncmp.s strncpy.s strpbrk.s strrchr.s strspn.s strtok.s X XCRYPT = crypt.s X XCLEAN_UNISTD = isatty.s sleep.s X XUNIX = access.s alarm.s chdir.s chmod.s chown.s chroot.s close.s creat.s \ X dup.s dup2.s exec.s fork.s fstat.s getegid.s geteuid.s getgid.s \ X getuid.s kill.s link.s lseek.s brk.s brk2.s brksize.s mknod.s \ X getpid.s getppid.s mount.s open.s pause.s pipe.s read.s setgid.s \ X setuid.s signal.s catchsig.s stat.s stime.s sync.s time.s times.s \ X umask.s umount.s unlink.s utime.s wait.s write.s X XMINIX_INTERFACE = syslib.s call.s message.s sendrec.s X XCOMPILER_INTERNAL = \ X adi.s and.s blm.s cii.s cmi4.s cms.s cmu4.s com.s csa2.s csb2.s \ X cuu.s _dup.s dvi4.s dvu4.s exg.s fakfp.s gto.s iaar.s ilar.s \ X inn.s ior.s isar.s lar2.s loi.s mli4.s mon.s nop.s rck.s \ X rmi4.s rmu4.s sar2.s sbi.s set.s sti.s strhp.s xor.s \ X ret6.s ret8.s lfr6.s lfr8.s retarea.s return.s X XCOMPILER_TRAP = error.s unknown.s fat.s trp.s vars.s X XEXIT = stop.s exit.s X Xlibc.a: .Made X -mv libc.a libc.a.orig X ar q libc.a $(CURSES) X ar q libc.a $(MISCELLANEOUS) X ar q libc.a $(ANSI_UNISTD) X ar q libc.a $(IOCTL) X ar q libc.a $(AMOEBA) X ar q libc.a $(TIME) X ar q libc.a $(STRERROR) X ar q libc.a $(STDIO) X ar q libc.a $(NOT_STDIO) X ar q libc.a $(STDLIB) X ar q libc.a $(CTYPE) X ar q libc.a $(DIRENT) X ar q libc.a $(SETJMP) X ar q libc.a $(REGEXP) X ar q libc.a $(STRING) X ar q libc.a $(CRYPT) X ar q libc.a $(CLEAN_UNISTD) X ar q libc.a $(UNIX) X ar q libc.a $(MINIX_INTERFACE) X ar q libc.a $(COMPILER_INTERNAL) X ar q libc.a $(COMPILER_TRAP) X ar q libc.a $(EXIT) X touch .Made X X.Made: $(CURSES) X.Made: $(MISCELLANEOUS) X.Made: $(ANSI_UNISTD) X.Made: $(IOCTL) X.Made: $(AMOEBA) X.Made: $(TIME) X.Made: $(STRERROR) X.Made: $(STDIO) X.Made: $(NOT_STDIO) X.Made: $(STDLIB) X.Made: $(CTYPE) X.Made: $(DIRENT) X.Made: $(SETJMP) X.Made: $(REGEXP) X.Made: $(STRING) X.Made: $(CRYPT) X.Made: $(UNIX) X.Made: $(MINIX_INTERFACE) X.Made: $(COMPILER_INTERNAL) X.Made: $(COMPILER_TRAP) X.Made: $(EXIT) / echo x - CRCLIST sed '/^X/s///' > CRCLIST << '/' X42976 2909 Install X29509 736 Makefile X49536 3238 Makefile.libc X36390 306 assert.h X04501 1827 ctype.h X16607 894 dirent.h X61144 1267 errno.h X23155 1390 fcntl.h X59055 478 grp.h X36738 293 lib.h X56982 1251 limits.h X36832 166 prototype.h X18121 553 pwd.h X18182 721 setjmp.h X23686 2249 signal.h X46349 1465 stdarg.h X46642 579 stddef.h X41917 6158 stdio.h X42306 1348 stdiolib.h X34643 2233 stdlib.h X31036 2807 string.h X25499 3361 termios.h X10320 1246 time.h X05318 3507 unistd.h X17559 389 utime.h X47700 1421 sys/dirent.h X23639 2125 sys/stat.h X45063 429 sys/times.h X03055 707 sys/types.h X63086 483 sys/utsname.h X56375 887 sys/wait.h X44639 1012 _bufproc.c X09696 202 _cleanup.c X33452 9856 _doprnt.c X52978 8006 _doscan.c X53014 1148 _filbuf.c X01268 1447 _flsbuf.c X17271 728 _flspbuf.c X00706 538 _iobdata.c X38693 1043 _iobproc.c X36193 1515 _ioinit.c X09043 983 _valmode.c X64177 1126 atexit.c X20154 2579 ctype.c X16928 348 cuserid.c X22853 167 div.c X07059 334 exit.c X24358 525 fclose.c X17370 1056 fdopen.c X36047 1371 fflush.c X41316 625 fgetc.c X00549 681 fgets.c X39208 1593 fopen.c X17604 847 fputc.c X34903 625 fputs.c X33170 2925 fread.c X63326 1735 freopen.c X52582 1164 fseek.c X00763 963 ftell.c X36592 3251 fwrite.c X18799 1882 getgrent.c X61455 286 getlogin.c X12848 1852 getpwent.c X63222 424 gets.c X08852 180 ldiv.c X06090 1546 perror.c X48671 1415 printf.c X25746 120 printk.c X01820 1420 prints.c X35554 262 remove.c X32949 1739 rename.c X56330 939 scanf.c X01335 1251 setvbuf.c X60329 1091 sprintf.c X50293 437 sscanf.c X03709 763 stdio_misc.c X34867 1609 strtol.c X63398 1466 strtoul.c X17346 1152 tmpfile.c X49999 993 tmpnam.c X30591 815 ungetc.c /