Subject: chflags - immutable|appendonly files come to 2BSD(#207 - Part 11 of 14) Index: bin,etc,lib,sys/many_files 2.11BSD Description: Files/directories can not be declared append-only, immutable, archived or not to be dumped under 2.11BSD. dump(8) lacked the ability to bypass files marked for 'nodump'. Upper case only and Hazeltine terminal support made the tty driver (and several utilities - 'vi' and 'getty' to name two) needlessly complicated and larger (especially since those devices are obsolete). open(2) can not provide for atomically obtaining a flock(2)'d file descriptor. open(2)ing with O_NDELAY (now called O_NONBLOCK) would not wait for carrier on the first i/o operation. Obsolete stub system calls 'setdopt' and 'getdopt' were still present in the kernel even though they have never done anything except take up space. Repeat-By: This section does not apply this time since this is an 'update' which adds new functionality rather than fixing an existing bug. Fix: Refer to part 0 (#197) for the complete description and installation instructions. This is part 11 of 14 (#207). Files affected by this part are: /usr/src/ucb/ex/Makefile /usr/src/ucb/ex/READ_ME /usr/src/ucb/ex/ex_put.c /usr/src/ucb/ex/ex_tty.c /usr/src/ucb/ex/ex_tty.h /usr/src/ucb/ex/ex_v.c /usr/src/ucb/ex/ex_vget.c /usr/src/ucb/ex/ex_vput.c =====================cut here======================== *** /usr/src/ucb/ex/Makefile.old Tue May 16 09:24:01 1989 --- /usr/src/ucb/ex/Makefile Fri Dec 9 21:35:04 1994 *************** *** 3,23 **** # All rights reserved. The Berkeley software License Agreement # specifies the terms and conditions for redistribution. # ! # @(#)Makefile 7.13.1.1 (Berkeley) 8/12/86 # VERSION=3.7 # - # Ex skeletal makefile for VAX VM/Unix 4.2BSD - # # NB: This makefile doesn't indicate any dependencies on header files. # # Ex is very large - this version will not fit on PDP-11's without overlay # software. Things that can be turned off to save ! # space include LISPCODE (-l flag, showmatch and lisp options), UCVISUAL ! # (visual \ nonsense on upper case only terminals), CHDIR (the undocumented ! # chdir command.) VMUNIX makes ex considerably larger, raising many limits ! # and improving speed and simplicity of maintenance. It is suitable only ! # for a VAX or other large machine, and then probably only in a paged system. # # Don't define VFORK unless your system has the VFORK system call, # which is like fork but the two processes have only one data space until the --- 3,21 ---- # All rights reserved. The Berkeley software License Agreement # specifies the terms and conditions for redistribution. # ! # @(#)Makefile 7.13.1.2 (2.11BSD GTE) 12/9/94 # VERSION=3.7 # # NB: This makefile doesn't indicate any dependencies on header files. # # Ex is very large - this version will not fit on PDP-11's without overlay # software. Things that can be turned off to save ! # space include LISPCODE (-l flag, showmatch and lisp options), CHDIR (the ! # undocumented chdir command.) VMUNIX makes ex considerably larger, raising ! # many limits and improving speed and simplicity of maintenance. It is ! # suitable only for a VAX or other large machine, and then probably only in ! # a paged system. # # Don't define VFORK unless your system has the VFORK system call, # which is like fork but the two processes have only one data space until the *************** *** 34,40 **** DEBUGFLAGS= -DTRACE -g NONDEBUGFLAGS= -O DEB= ${NONDEBUGFLAGS} # or ${DEBUGFLAGS} to to debug ! #OPTIONS= -DLISPCODE -DCHDIR -DUCVISUAL -DVFORK -DVMUNIX -DFASTTAG OPTIONS= -DLISPCODE -DCHDIR -DVFORK -DFASTTAG CFLAGS= -DTABS=8 ${OPTIONS} ${DEB} LDFLAGS= -X --- 32,38 ---- DEBUGFLAGS= -DTRACE -g NONDEBUGFLAGS= -O DEB= ${NONDEBUGFLAGS} # or ${DEBUGFLAGS} to to debug ! #OPTIONS= -DLISPCODE -DCHDIR -DVFORK -DVMUNIX -DFASTTAG OPTIONS= -DLISPCODE -DCHDIR -DVFORK -DFASTTAG CFLAGS= -DTABS=8 ${OPTIONS} ${DEB} LDFLAGS= -X *************** *** 49,55 **** ex_set.o ex_subr.o ex_tagio.o ex_temp.o ex_tty.o ex_unix.o \ ex_v.o ex_vadj.o ex_vget.o ex_vmain.o ex_voper.o \ ex_vops.o ex_vops2.o ex_vops3.o ex_vput.o ex_vwind.o \ ! printf.o bcopy.o strings.o HDRS= ex.h ex_argv.h ex_re.h ex_temp.h ex_tty.h ex_tune.h ex_vars.h ex_vis.h SRC1= ex.c ex_addr.c ex_cmds.c ex_cmds2.c ex_cmdsub.c SRC2= ex_data.c ex_get.c ex_io.c ex_put.c ex_re.c --- 47,53 ---- ex_set.o ex_subr.o ex_tagio.o ex_temp.o ex_tty.o ex_unix.o \ ex_v.o ex_vadj.o ex_vget.o ex_vmain.o ex_voper.o \ ex_vops.o ex_vops2.o ex_vops3.o ex_vput.o ex_vwind.o \ ! printf.o strings.o HDRS= ex.h ex_argv.h ex_re.h ex_temp.h ex_tty.h ex_tune.h ex_vars.h ex_vis.h SRC1= ex.c ex_addr.c ex_cmds.c ex_cmds2.c ex_cmdsub.c SRC2= ex_data.c ex_get.c ex_io.c ex_put.c ex_re.c *************** *** 56,63 **** SRC3= ex_set.c ex_subr.c ex_tagio.c ex_temp.c ex_tty.c ex_unix.c SRC4= ex_v.c ex_vadj.c ex_vget.c ex_vmain.c ex_voper.c SRC5= ex_vops.c ex_vops2.c ex_vops3.c ex_vput.c ex_vwind.c ! SRC6= printf.c bcopy.c expreserve.c exrecover.c ! MISC= makefile READ_ME rofix VGRIND= csh /usr/ucb/vgrind VHDR= "Ex Version ${VERSION}" --- 54,61 ---- SRC3= ex_set.c ex_subr.c ex_tagio.c ex_temp.c ex_tty.c ex_unix.c SRC4= ex_v.c ex_vadj.c ex_vget.c ex_vmain.c ex_voper.c SRC5= ex_vops.c ex_vops2.c ex_vops3.c ex_vput.c ex_vwind.c ! SRC6= printf.c expreserve.c exrecover.c ! MISC= makefile READ_ME VGRIND= csh /usr/ucb/vgrind VHDR= "Ex Version ${VERSION}" *************** *** 105,124 **** ex_vars.h: csh makeoptions ${CFLAGS} - bcopy.o: bcopy.c - ${CC} -c ${CFLAGS} bcopy.c - # xstr: hands off! strings.o: strings ${XSTR} ! -if [ X${SEPFLAG} = X-i ]; then \ ! ${CC} -c -o strings.o xs.c; \ ! else \ ! ${CC} -c -S xs.c; \ ! ed - dol ? ((UPPERCASE || HZ) ? '^' : '~') : '@'); if (state == HARDOPEN) sethard(); vclreol(); --- 58,64 ---- vigoto(l, 0); if ((hold & HOLDAT) == 0) ! putchar(tp > dol ? '~' : '@'); if (state == HARDOPEN) sethard(); vclreol();