home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1992 March / Source_Code_CD-ROM_Walnut_Creek_March_1992.iso / usenet / altsrcs / 1 / 1512 / Makefile < prev    next >
Encoding:
Makefile  |  1990-12-28  |  6.5 KB  |  285 lines

  1. #
  2. # Copyright 1988,1989,1990, John F. Haugh II
  3. # All rights reserved.
  4. #
  5. # Non-commercial distribution permitted.  You must provide this source
  6. # code in any distribution.  This notice must remain intact.
  7. #
  8. #    @(#)Makefile    2.7    09:40:16  - Shadow password system
  9. #
  10. #    @(#)Makefile    2.7    09:40:16    6/22/90
  11. #
  12. SHELL = /bin/sh
  13.  
  14. # Define the directory login is copied to.  BE VERY CAREFUL!!!
  15. # LOGINDIR = /bin
  16. LOGINDIR = /etc
  17.  
  18. # Pick your favorite C compiler and tags command
  19. CC = cc
  20. TAGS = ctags
  21.  
  22. # OS.  Currently only BSD and USG are defined.  If you don't use BSD,
  23. # USG (System V) is assumed.
  24. # OS = -DBSD
  25.  
  26. # Do you have to do ranlib?  Sorry to hear that ...
  27. RANLIB = ranlib
  28. # RANLIB = echo
  29.  
  30. # Flags for SCO Xenix/386
  31. CFLAGS = -O -M3 -g $(PWDEF) $(AL64DEF) $(OS)
  32. LIBS = -lcrypt
  33. LDFLAGS = -M3 -g
  34. LTFLAGS = 
  35. # This should be Slibsec.a for small model, or Llibsec.a for
  36. # large model or whatever.  MUST AGREE WITH CFLAGS!!!
  37. LIBSEC = Slibsec.a
  38.  
  39. # Flags for normal machines
  40. # CFLAGS = -O -g $(PWDEF) $(AL64DEF) $(OS)
  41. # LIBS =
  42. # LDFLAGS = -g
  43. # LIBSEC = libsec.a
  44.  
  45. LOBJS = lmain.o login.o env.o password.o entry.o valid.o setup.o shell.o age.o \
  46.     pwent.o utmp.o sub.o mail.o motd.o log.o shadow.o dialup.o dialchk.o \
  47.     ttytype.o failure.o port.o
  48.  
  49. LSRCS = lmain.c login.c env.c password.c entry.c valid.c setup.c shell.c age.c \
  50.     pwent.c utmp.c sub.c mail.c motd.c log.c shadow.c dialup.c dialchk.c \
  51.     ttytype.c failure.c port.c
  52.  
  53. SOBJS = smain.o env.o password.o entry.o suvalid.o susetup.o sushell.o \
  54.     pwent.o susub.o mail.o motd.o sulog.o shadow.o age.o
  55.  
  56. SSRCS = smain.c env.c password.c entry.c valid.c setup.c shell.c \
  57.     pwent.c sub.c mail.c motd.c sulog.c shadow.c age.c
  58.  
  59. POBJS = pmain.o password.o entry.o valid.o pwage.o pwent.o obscure.o shadow.o
  60.  
  61. PSRCS = pmain.c password.c entry.c valid.c age.c pwent.c obscure.c shadow.c
  62.  
  63. GPSRCS = gpmain.c password.c grent.c
  64.  
  65. GPOBJS = gpmain.o password.o grent.o
  66.  
  67. PWOBJS = pwconv.o pwent.o shadow.o pwage.o
  68.  
  69. PWSRCS = pwconv.c pwent.c shadow.c age.c
  70.  
  71. PWUNOBJS = pwunconv.o pwent.o shadow.o pwage.o
  72.  
  73. PWUNSRCS = pwunconv.c pwent.c shadow.c age.c
  74.  
  75. SULOGOBJS = sulogin.o entry.o env.o password.o pwage.o pwent.o setup.o \
  76.     shadow.o shell.o valid.o
  77.  
  78. SULOGSRCS = sulogin.c entry.c env.c password.c age.c pwent.c setup.c \
  79.     shadow.c shell.c valid.c
  80.  
  81. DBOBJS = mkpasswd.o pwent.o
  82.  
  83. DBSRCS = mkpasswd.c pwent.c
  84.  
  85. NGSRCS = newgrp.c shadow.c password.c
  86.  
  87. NGOBJS = newgrp.o shadow.o password.o
  88.  
  89. ALLSRCS = age.c dialchk.c dialup.c entry.c env.c lmain.c log.c login.c mail.c \
  90.     motd.c obscure.c password.c pmain.c pwconv.c pwent.c pwunconv.c \
  91.     setup.c shadow.c shell.c smain.c sub.c sulog.c sulogin.c ttytype.c \
  92.     utmp.c valid.c port.c newgrp.c gpmain.c grent.c
  93.  
  94. FILES1 = README log.c mail.c shadow.h sulog.c Makefile entry.c obscure.c \
  95.     setup.c sub.c config.h pmain.c sulogin.c dialup.h ttytype.c \
  96.     port.c newgrp.c
  97.  
  98. FILES2 = lastlog.h login.c motd.c password.c shell.c utmp.c age.c env.c \
  99.     pwent.c shadow.c valid.c lmain.c smain.c pwconv.c dialup.c dialchk.c \
  100.     pwunconv.c failure.c faillog.h faillog.c port.h gpmain.c grent.c
  101.  
  102. DOCS = login.1 passwd.1 passwd.4 shadow.3 shadow.4 su.1 sulogin.8 pwconv.8 \
  103.     pwunconv.8 faillog.8 faillog.4
  104.  
  105. BINS = su login pwconv pwunconv passwd sulogin faillog newgrp gpasswd \
  106.     mkpasswd
  107.  
  108. all:    $(BINS) $(DOCS)
  109.  
  110. libsec: shadow.o
  111.     ar rv $(LIBSEC) shadow.o
  112.     $(RANLIB) $(LIBSEC)
  113.  
  114. install: all
  115.     strip $(BINS)
  116.     cp login $(LOGINDIR)/login
  117.     cp mkpasswd pwconv pwunconv sulogin /etc
  118.     cp su passwd gpasswd faillog newgrp /bin
  119.     cp shadow.h /usr/include
  120.     chown root $(LOGINDIR)/login /etc/pwconv /etc/pwunconv /etc/sulogin \
  121.         /bin/su /bin/passwd /bin/gpasswd /bin/newgrp /etc/mkpasswd
  122.     chgrp root $(LOGINDIR)/login /etc/pwconv /etc/pwunconv /etc/sulogin \
  123.         /bin/su /bin/passwd /bin/gpasswd /bin/newgrp /etc/mkpasswd
  124.     chown bin /bin/faillog /usr/include/shadow.h
  125.     chgrp bin /bin/faillog /usr/include/shadow.h
  126.     chmod 700 /etc/pwconv /etc/pwunconv /etc/sulogin /etc/mkpasswd
  127.     chmod 4711 $(LOGINDIR)/login /bin/su /bin/passwd /bin/gpasswd \
  128.         /bin/newgrp
  129.     chmod 711 /bin/faillog
  130.     chmod 444 /usr/include/shadow.h
  131.  
  132. lint:    su.L login.L pwconv.L pwunconv.L passwd.L sulogin.L faillog.L \
  133.     newgrp.L gpasswd.L
  134.  
  135. tags:    $(ALLSRCS)
  136.     $(TAGS) $(ALLSRCS)
  137.  
  138. README:    s.README
  139.     get s.README
  140.     
  141. $(DOCS):
  142.     get s.$@
  143.  
  144. login:    $(LOBJS)
  145.     $(CC) -o login $(LDFLAGS) $(LOBJS) $(LIBS)
  146.  
  147. login.L: $(LSRCS)
  148.     lint $(LSRCS) > login.L
  149.  
  150. su:    $(SOBJS)
  151.     $(CC) -o su $(LDFLAGS) $(SOBJS) $(LIBS)
  152.  
  153. su.L:    $(SSRCS)
  154.     lint -DSU $(SSRCS) > su.L
  155.  
  156. passwd:    $(POBJS)
  157.     $(CC) -o passwd $(LDFLAGS) $(POBJS) $(LIBS)
  158.  
  159. passwd.L: $(PSRCS)
  160.     lint -DPASSWD $(PSRCS) > passwd.L
  161.  
  162. gpasswd: $(GPOBJS)
  163.     $(CC) -o gpasswd $(LDFLAGS) $(GPOBJS) $(LIBS)
  164.  
  165. gpasswd.L: $(GPSRCS)
  166.     lint $(GPSRCS) > gpasswd.L
  167.  
  168. pwconv:    $(PWOBJS)
  169.     $(CC) -o pwconv $(LDFLAGS) $(PWOBJS) $(LIBS)
  170.  
  171. pwconv.L: $(PWSRCS)
  172.     lint -DPASSWD $(PWSRCS) > pwconv.L
  173.  
  174. pwunconv: $(PWUNOBJS)
  175.     $(CC) -o pwunconv $(LDFLAGS) $(PWUNOBJS) $(LIBS)
  176.  
  177. pwunconv.L: $(PWUNSRCS)
  178.     lint -DPASSWD $(PWUNSRCS) > pwunconv.L
  179.  
  180. sulogin: $(SULOGOBJS)
  181.     $(CC) -o sulogin $(LDFLAGS) $(SULOGOBJS) $(LIBS)
  182.  
  183. sulogin.L: $(SULOGSRCS)
  184.     lint $(SULOGSRCS) > sulogin.L
  185.  
  186. faillog: faillog.o
  187.     $(CC) -o faillog $(LDFLAGS) faillog.o $(LIBS)
  188.  
  189. faillog.L: faillog.c faillog.h config.h
  190.     lint faillog.c > faillog.L
  191.  
  192. mkpasswd: $(DBOBJS)
  193.     $(CC) -o mkpasswd $(LDFLAGS) $(DBOBJS) $(LIBS) -ldbm
  194.  
  195. mkpasswd.L: $(DBSRCS)
  196.     lint $(DBSRCS) > mkpasswd.L
  197.  
  198. newgrp: $(NGOBJS)
  199.     $(CC) -o newgrp $(LDFLAGS) $(NGOBJS) $(LIBS)
  200.  
  201. newgrp.L: $(NGSRCS)
  202.     lint $(NGSRCS) > newgrp.L
  203.  
  204. sushell.o: config.h shell.c
  205.     $(CC) -c $(CFLAGS) -DSU shell.c
  206.     mv shell.o sushell.o
  207.  
  208. susub.o: config.h sub.c
  209.     cp sub.c susub.c
  210.     $(CC) -c $(CFLAGS) -DSU susub.c
  211.     rm susub.c
  212.  
  213. sulog.o: config.h
  214.  
  215. susetup.o: config.h setup.c
  216.     $(CC) -c $(CFLAGS) -DSU setup.c
  217.     mv setup.o susetup.o
  218.  
  219. suvalid.o: config.h valid.c
  220.     cp valid.c suvalid.c
  221.     $(CC) -c $(CFLAGS) -DSU suvalid.c
  222.     rm suvalid.c
  223.  
  224. pmain.o: config.h lastlog.h shadow.h
  225.  
  226. pwage.o: age.c config.h
  227.     cp age.c pwage.c
  228.     $(CC) -c $(CFLAGS) -DPASSWD pwage.c
  229.     rm pwage.c
  230.  
  231. lmain.o: config.h lastlog.h faillog.h
  232.  
  233. smain.o: config.h lastlog.h
  234.  
  235. setup.o: config.h
  236.  
  237. utmp.o: config.h
  238.  
  239. mail.o: config.h
  240.  
  241. motd.o: config.h
  242.  
  243. age.o: config.h
  244.  
  245. log.o: config.h lastlog.h
  246.  
  247. shell.o: config.h
  248.  
  249. entry.o: config.h shadow.h
  250.  
  251. shadow.o: shadow.h
  252.  
  253. dialup.o: dialup.h
  254.  
  255. dialchk.o: dialup.h config.h
  256.  
  257. valid.o: config.h
  258.  
  259. failure.o: faillog.h config.h
  260.  
  261. faillog.o: faillog.h config.h
  262.  
  263. pwent.o: config.h
  264.  
  265. port.o: port.h
  266.  
  267. newgrp.o: config.h shadow.h
  268.  
  269. clean:
  270.     -rm -f *.o a.out core npasswd nshadow *.pag *.dir
  271.  
  272. clobber: clean
  273.     -rm -f $(BINS) *.L
  274.  
  275. shar:    login.sh.1 login.sh.2 login.sh.3
  276.  
  277. login.sh.1: $(FILES1)
  278.     shar -a $(FILES1) > login.sh.1
  279.  
  280. login.sh.2: $(FILES2)
  281.     shar -a $(FILES2) > login.sh.2
  282.  
  283. login.sh.3: $(DOCS)
  284.     shar -a $(DOCS) > login.sh.3
  285.