csh and tcsh work

Sources of csh/makefile

csh と tcsh のソース

Bill Joy

First published: October, 1978.

Copyright © 1979 Regents of the University of California.

  1. 1
    #
  2. 2
    # Skeleton for version 7
  3. 3
    #
  4. 4
    BINDIR=/bin
  5. 5
    CFLAGS=	-O -Ddebug -DTELL
  6. 6
    XSTR=	/usr/ucb/xstr
  7. 7
    ED=	-ed
  8. 8
    AS=	-as
  9. 9
    RM=	-rm
  10. 10
    CXREF=	/usr/ucb/cxref
  11. 11
  12. 12
    #
  13. 13
    # strings.o must be last in OBJS since it can change when previous files compile
  14. 14
    #
  15. 15
    OBJS=sh.o sh.dol.o sh.err.o sh.exec.o sh.exp.o sh.func.o sh.glob.o sh.hist.o \
  16. 16
    	sh.lex.o sh.misc.o sh.parse.o sh.print.o sh.sem.o sh.set.o \
  17. 17
    	sh.wait.o alloc.o sh.init.o printf.o getpwent.o getpwnam.o \
  18. 18
    	strings.o
  19. 19
  20. 20
    #
  21. 21
    # Special massaging of C files for sharing of strings
  22. 22
    #
  23. 23
    .c.o:
  24. 24
    	${CC} -E ${CFLAGS} $*.c | ${XSTR} -c -
  25. 25
    	${CC} -c ${CFLAGS} x.c
  26. 26
    	mv x.o $*.o
  27. 27
  28. 28
    a.out: ${OBJS} sh.local.h
  29. 29
    	${CC} -n ${OBJS}
  30. 30
  31. 31
    #
  32. 32
    # strings.o and sh.init.o are specially processed to be shared
  33. 33
    #
  34. 34
    strings.o: strings
  35. 35
    	${XSTR}
  36. 36
    	${CC} -S xs.c
  37. 37
    	${ED} - <:rofix xs.s
  38. 38
    	${AS} -o strings.o xs.s
  39. 39
    	${RM} xs.s
  40. 40
  41. 41
    sh.init.o:
  42. 42
    	${CC} -E ${CFLAGS} sh.init.c | ${XSTR} -c -
  43. 43
    	${CC} ${CFLAGS} -S x.c
  44. 44
    	${ED} - <:rofix x.s
  45. 45
    	${AS} -o sh.init.o x.s
  46. 46
    	${RM} x.s
  47. 47
  48. 48
    lint:
  49. 49
    	lint sh*.h sh*.c
  50. 50
  51. 51
    print:
  52. 52
    	@pr READ_ME
  53. 53
    	@pr makefile makefile.*
  54. 54
    	@(size -l a.out; size *.o) | pr -h SIZES
  55. 55
    	@${CXREF} sh*.c | pr -h XREF
  56. 56
    	@ls -l | pr
  57. 57
    	@pr sh*.h [a-rt-z]*.h sh*.c alloc.c
  58. 58
  59. 59
    install: a.out sh.local.h
  60. 60
    	${RM} ${BINDIR}/csh
  61. 61
    	cp a.out ${BINDIR}/csh
  62. 62
  63. 63
    clean:
  64. 64
    	${RM} -f a.out strings x.c xs.c
  65. 65
    	${RM} -f *.o

To the top of this page