home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1992 March / Source_Code_CD-ROM_Walnut_Creek_March_1992.iso / usenet / altsrcs / 1 / 1704 / Makefile < prev    next >
Encoding:
Makefile  |  1990-12-28  |  7.9 KB  |  353 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.15    09:43:26  - Shadow password system
  9. #
  10. #    @(#)Makefile    2.15    09:43:26    8/23/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 -ldbm
  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 pwpack.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 pwpack.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 suage.o pwpack.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 pwpack.c
  58.  
  59. POBJS = pmain.o password.o entry.o valid.o pwage.o pwent.o obscure.o shadow.o \
  60.     pwpack.o
  61.  
  62. PSRCS = pmain.c password.c entry.c valid.c age.c pwent.c obscure.c shadow.c \
  63.     pwpack.c
  64.  
  65. GPSRCS = gpmain.c password.c grent.c
  66.  
  67. GPOBJS = gpmain.o password.o grent.o
  68.  
  69. PWOBJS = pwconv.o pwent.o shadow.o pwage.o pwpack.o
  70.  
  71. PWSRCS = pwconv.c pwent.c shadow.c age.c pwpack.c
  72.  
  73. PWUNOBJS = pwunconv.o pwent.o shadow.o pwage.o pwpack.o
  74.  
  75. PWUNSRCS = pwunconv.c pwent.c shadow.c age.c pwpack.c
  76.  
  77. SULOGOBJS = sulogin.o entry.o env.o password.o pwage.o pwent.o setup.o \
  78.     shadow.o shell.o valid.o pwpack.o
  79.  
  80. SULOGSRCS = sulogin.c entry.c env.c password.c age.c pwent.c setup.c \
  81.     shadow.c shell.c valid.c pwpack.c
  82.  
  83. DBOBJS = mkpasswd.o pwent.o pwpack.o
  84.  
  85. DBSRCS = mkpasswd.c pwent.c pwpack.c
  86.  
  87. NGSRCS = newgrp.c shadow.c password.c
  88.  
  89. NGOBJS = newgrp.o shadow.o password.o
  90.  
  91. CHFNSRCS = chfn.c pwent.c pwpack.c
  92.  
  93. CHFNOBJS = chfn.o pwent.o pwpack.o
  94.  
  95. CHSHSRCS = chsh.c pwent.c pwpack.c
  96.  
  97. CHSHOBJS = chsh.o pwent.o pwpack.o
  98.  
  99. CHAGEOBJS = chage.o pwent.o pwpack.o pwage.o shadow.o
  100.  
  101. CHAGESRCS = chage.c pwent.c pwpack.c age.c shadow.c
  102.  
  103. ALLSRCS = age.c dialchk.c dialup.c entry.c env.c lmain.c log.c login.c mail.c \
  104.     motd.c obscure.c password.c pmain.c pwconv.c pwent.c pwunconv.c \
  105.     setup.c shadow.c shell.c smain.c sub.c sulog.c sulogin.c ttytype.c \
  106.     utmp.c valid.c port.c newgrp.c gpmain.c grent.c mkpasswd.c pwpack.c \
  107.     chfn.c chsh.c chage.c
  108.  
  109. FILES1 = README newgrp.c Makefile config.h pwunconv.c obscure.c age.c \
  110.     sub.c login.c shell.c lastlog.h
  111.  
  112. FILES2 = pmain.c port.c lmain.c mkpasswd.c sulogin.c pwpack.c dialup.c \
  113.     sulog.c password.c env.c mail.c dialchk.c
  114.  
  115. FILES3 = chfn.c chsh.c smain.c faillog.c pwconv.c failure.c utmp.c shadow.c \
  116.     log.c shadow.h faillog.h
  117.  
  118. FILES4 = gpmain.c chage.c pwent.c valid.c setup.c entry.c ttytype.c port.h \
  119.     grent.c motd.c dialup.h
  120.  
  121. MAN_1 = chage.1 chfn.1 chsh.1 login.1 passwd.1 su.1
  122. MAN_3 = shadow.3
  123. MAN_4 = faillog.4 passwd.4 porttime.4 shadow.4
  124. MAN_8 = faillog.8 pwconv.8 pwunconv.8 sulogin.8
  125.  
  126. DOCS = $(MAN_1) $(MAN_3) $(MAN_4) $(MAN_8)
  127.  
  128. BINS = su login pwconv pwunconv passwd sulogin faillog newgrp gpasswd \
  129.     mkpasswd chfn chsh chage
  130.  
  131. all:    $(BINS) $(DOCS)
  132.  
  133. libsec: shadow.o
  134.     ar rv $(LIBSEC) shadow.o
  135.     $(RANLIB) $(LIBSEC)
  136.  
  137. install: all
  138.     strip $(BINS)
  139.     cp login $(LOGINDIR)/login
  140.     cp mkpasswd pwconv pwunconv sulogin /etc
  141.     cp su passwd gpasswd faillog newgrp chfn chsh /bin
  142.     cp shadow.h /usr/include
  143.     chown root $(LOGINDIR)/login /etc/pwconv /etc/pwunconv /etc/sulogin \
  144.         /bin/su /bin/passwd /bin/gpasswd /bin/newgrp /etc/mkpasswd
  145.     chgrp root $(LOGINDIR)/login /etc/pwconv /etc/pwunconv /etc/sulogin \
  146.         /bin/su /bin/passwd /bin/gpasswd /bin/newgrp /etc/mkpasswd
  147.     chown bin /bin/faillog /usr/include/shadow.h
  148.     chgrp bin /bin/faillog /usr/include/shadow.h
  149.     chmod 700 /etc/pwconv /etc/pwunconv /etc/sulogin /etc/mkpasswd
  150.     chmod 4711 $(LOGINDIR)/login /bin/su /bin/passwd /bin/gpasswd \
  151.         /bin/newgrp /bin/chfn
  152.     chmod 711 /bin/faillog
  153.     chmod 444 /usr/include/shadow.h
  154.  
  155. lint:    su.L login.L pwconv.L pwunconv.L passwd.L sulogin.L faillog.L \
  156.     newgrp.L gpasswd.L mkpasswd.L chfn.L chsh.L chage.L
  157.  
  158. tags:    $(ALLSRCS)
  159.     $(TAGS) $(ALLSRCS)
  160.  
  161. README:    s.README
  162.     get s.README
  163.     
  164. $(DOCS):
  165.     get s.$@
  166.  
  167. login:    $(LOBJS)
  168.     $(CC) -o login $(LDFLAGS) $(LOBJS) $(LIBS)
  169.  
  170. login.L: $(LSRCS)
  171.     lint $(LSRCS) > login.L
  172.  
  173. su:    $(SOBJS)
  174.     $(CC) -o su $(LDFLAGS) $(SOBJS) $(LIBS)
  175.  
  176. su.L:    $(SSRCS)
  177.     lint -DSU $(SSRCS) > su.L
  178.  
  179. passwd:    $(POBJS)
  180.     $(CC) -o passwd $(LDFLAGS) $(POBJS) $(LIBS)
  181.  
  182. passwd.L: $(PSRCS)
  183.     lint -DPASSWD $(PSRCS) > passwd.L
  184.  
  185. gpasswd: $(GPOBJS)
  186.     $(CC) -o gpasswd $(LDFLAGS) $(GPOBJS) $(LIBS)
  187.  
  188. gpasswd.L: $(GPSRCS)
  189.     lint $(GPSRCS) > gpasswd.L
  190.  
  191. pwconv:    $(PWOBJS)
  192.     $(CC) -o pwconv $(LDFLAGS) $(PWOBJS) $(LIBS)
  193.  
  194. pwconv.L: $(PWSRCS)
  195.     lint -DPASSWD $(PWSRCS) > pwconv.L
  196.  
  197. pwunconv: $(PWUNOBJS)
  198.     $(CC) -o pwunconv $(LDFLAGS) $(PWUNOBJS) $(LIBS)
  199.  
  200. pwunconv.L: $(PWUNSRCS)
  201.     lint -DPASSWD $(PWUNSRCS) > pwunconv.L
  202.  
  203. sulogin: $(SULOGOBJS)
  204.     $(CC) -o sulogin $(LDFLAGS) $(SULOGOBJS) $(LIBS)
  205.  
  206. sulogin.L: $(SULOGSRCS)
  207.     lint $(SULOGSRCS) > sulogin.L
  208.  
  209. faillog: faillog.o
  210.     $(CC) -o faillog $(LDFLAGS) faillog.o $(LIBS)
  211.  
  212. faillog.L: faillog.c faillog.h config.h
  213.     lint faillog.c > faillog.L
  214.  
  215. mkpasswd: $(DBOBJS)
  216.     $(CC) -o mkpasswd $(LDFLAGS) $(DBOBJS) $(LIBS)
  217.  
  218. mkpasswd.L: $(DBSRCS)
  219.     lint $(DBSRCS) > mkpasswd.L
  220.  
  221. newgrp: $(NGOBJS)
  222.     $(CC) -o newgrp $(LDFLAGS) $(NGOBJS) $(LIBS)
  223.  
  224. newgrp.L: $(NGSRCS)
  225.     lint $(NGSRCS) > newgrp.L
  226.  
  227. chfn:    $(CHFNOBJS)
  228.     $(CC) -o chfn $(LDFLAGS) $(CHFNOBJS) $(LIBS)
  229.  
  230. chfn.L:    $(CHFNSRCS)
  231.     lint $(CHFNSRCS) > chfn.L
  232.  
  233. chsh:    $(CHSHOBJS)
  234.     $(CC) -o chsh $(LDFLAGS) $(CHSHOBJS) $(LIBS)
  235.  
  236. chsh.L: $(CHSHSRCS)
  237.     lint $(CHSHSRCS) > chsh.L
  238.  
  239. chage:    $(CHAGEOBJS)
  240.     $(CC) -o chage $(LDFLAGS) $(CHAGEOBJS) $(LIBS)
  241.  
  242. chage.L: $(CHAGESRCS)
  243.     lint -DPASSWD $(CHAGESRCS) > chage.L
  244.  
  245. sushell.c: shell.c
  246.     cp shell.c sushell.c
  247.  
  248. sushell.o: config.h sushell.c
  249.     $(CC) -c $(CFLAGS) -DSU sushell.c
  250.  
  251. susub.c: sub.c
  252.     cp sub.c susub.c
  253.  
  254. susub.o: config.h susub.c
  255.     $(CC) -c $(CFLAGS) -DSU susub.c
  256.  
  257. sulog.o: config.h
  258.  
  259. susetup.c: setup.c
  260.     cp setup.c susetup.c
  261.  
  262. susetup.o: config.h setup.c
  263.     $(CC) -c $(CFLAGS) -DSU susetup.c
  264.  
  265. suvalid.c: valid.c
  266.     cp valid.c suvalid.c
  267.  
  268. suvalid.o: config.h valid.c
  269.     $(CC) -c $(CFLAGS) -DSU suvalid.c
  270.  
  271. pmain.o: config.h lastlog.h shadow.h
  272.  
  273. pwage.o: age.c config.h
  274.     cp age.c pwage.c
  275.     $(CC) -c $(CFLAGS) -DPASSWD pwage.c
  276.     rm pwage.c
  277.  
  278. suage.o: age.c config.h
  279.     cp age.c suage.c
  280.     $(CC) -c $(CFLAGS) -DSU suage.c
  281.     rm suage.c
  282.  
  283. lmain.o: config.h lastlog.h faillog.h
  284.  
  285. smain.o: config.h lastlog.h
  286.  
  287. setup.o: config.h
  288.  
  289. utmp.o: config.h
  290.  
  291. mail.o: config.h
  292.  
  293. motd.o: config.h
  294.  
  295. age.o: config.h
  296.  
  297. log.o: config.h lastlog.h
  298.  
  299. shell.o: config.h
  300.  
  301. entry.o: config.h shadow.h
  302.  
  303. shadow.o: shadow.h
  304.  
  305. dialup.o: dialup.h
  306.  
  307. dialchk.o: dialup.h config.h
  308.  
  309. valid.o: config.h
  310.  
  311. failure.o: faillog.h config.h
  312.  
  313. faillog.o: faillog.h config.h
  314.  
  315. pwent.o: config.h
  316.  
  317. port.o: port.h
  318.  
  319. newgrp.o: config.h shadow.h
  320.  
  321. mkpasswd.o: config.h
  322.  
  323. gpmain.o: config.h
  324.  
  325. chfn.o: config.h
  326.  
  327. chsh.o: config.h
  328.  
  329. chage.o: config.h shadow.h
  330.  
  331. clean:
  332.     -rm -f *.o a.out core npasswd nshadow *.pag *.dir
  333.  
  334. clobber: clean
  335.     -rm -f $(BINS) *.L sushell.c susetup.c susub.c suvalid.c
  336.  
  337. shar:    login.sh.1 login.sh.2 login.sh.3 login.sh.4 login.sh.5
  338.  
  339. login.sh.1: $(FILES1)
  340.     shar -a $(FILES1) > login.sh.1
  341.  
  342. login.sh.2: $(FILES2)
  343.     shar -a $(FILES2) > login.sh.2
  344.  
  345. login.sh.3: $(FILES3)
  346.     shar -a $(FILES3) > login.sh.3
  347.  
  348. login.sh.4: $(FILES4)
  349.     shar -a $(FILES4) > login.sh.4
  350.  
  351. login.sh.5: $(DOCS)
  352.     shar -a $(DOCS) > login.sh.5
  353.