home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume26 / port-lpr / part01 / Makefile < prev    next >
Makefile  |  1993-04-09  |  3KB  |  123 lines

  1. # fix SysV brain-damage
  2. SHELL=/bin/sh
  3. #
  4. DEFAULT_SERVER=
  5. #
  6. # pick a back-end driver from one of the following:
  7. #
  8. DRIVER=unix-tcp.o        # UNIX w/BSD-style sockets
  9. # (others to follow...maybe)
  10. #
  11. # This program was originally developed with GCC, but it doesn't always
  12. # use the same calling sequence as the system libraries (particularly
  13. # inet_ntoa()), so I don't use it for this anymore.
  14. # If your C compiler runs on UNIX, but doesn't define "unix" as a macro,
  15. # define it on the CFLAGS line with -Dunix
  16. # Don't get nervous, I always compile with -g.
  17. #
  18. #CC=gcc -ansi -g -Dunix
  19. CFLAGS=-g -Dunix
  20. #
  21. # nroff (or some facsimile thereof) is used to format the man pages.
  22. # I used groff because that way I don't end up with man pages that say
  23. # "SunOS" or "Ultrix" or some such.
  24. #
  25. #NROFF=nroff
  26. NROFF=groff -Tascii
  27. #
  28. # Set BINDIR to the directory where the program will be installed.
  29. # This doesn't affect the compilation, so you can set this after
  30. # compiling.
  31. #
  32. BINDIR=/usr/local/bin
  33. #
  34. # Set GWDIR to where the (optional) dnet-to-tcp lpr gateway will
  35. # be installed.  This doesn't affect compilation either.
  36. #
  37. GWDIR=/usr/sunlink/dni
  38. #
  39. # List of sources, for bundling together in a package
  40. #
  41. SRCS=lpr.c config.h common.h patchlevel.h \
  42.     unix-tcp.c Makefile \
  43.     vms-ucx-tcp.c vms-decnet.c vms-win-tcp.c descrip.mms \
  44.     dnet-lpd-gw.c \
  45.     lpr.man lpr.cat
  46. #
  47. # other stuff that goes with the package
  48. #
  49. PKG=BLURB README MANIFEST LICENSE ChangeLog $(SRCS)
  50.  
  51. #
  52. # The -lsocket stuff is an attempt to get this to work on machines
  53. # that have a BSD socket library built on top of STREAMS-based tcp
  54. # without having to have a hairy configuration program just to compile
  55. # this.
  56. #
  57. lpr: lpr.c config.h $(DRIVER)
  58.     -if [ -f /usr/lib/libsocket.a ] ; then \
  59.         $(CC) $(CFLAGS) -o lpr lpr.c $(DRIVER) -lsocket ; \
  60.     else \
  61.         $(CC) $(CFLAGS) -o lpr lpr.c $(DRIVER) ; \
  62.     fi
  63.  
  64. dnet-lpd-gw: dnet-lpd-gw.c unix-tcp.o
  65.     $(CC) $(CFLAGS)  -o dnet-lpd-gw dnet-lpd-gw.c unix-tcp.o
  66.  
  67. #
  68. # preformatted man page, in case someone doesn't have nroff
  69. #
  70. lpr.cat: lpr.man
  71.     $(NROFF) -man lpr.man > lpr.cat
  72.  
  73. #
  74. # The wierd "rm || mv" stuff is an attempt to work around SysV brain
  75. # damage that won't let you rm a program that is running.
  76. #
  77. install: lpr
  78.     cp lpr $(BINDIR)/lpr.new
  79.     chown root $(BINDIR)/lpr.new
  80.     chmod 4711 $(BINDIR)/lpr.new
  81.     -rm  $(BINDIR)/lpr || mv $(BINDIR)/lpr $(BINDIR)/lpr.old
  82.     mv $(BINDIR)/lpr.new $(BINDIR)/lpr
  83.     -rm $(BINDIR)/lprm || mv $(BINDIR)/lprm $(BINDIR)/lprm.old
  84.     ln $(BINDIR)/lpr $(BINDIR)/lprm
  85.     -rm $(BINDIR)/lpq || mv $(BINDIR)/lpq $(BINDIR)/lpq.old
  86.     ln $(BINDIR)/lpr $(BINDIR)/lpq
  87.  
  88. install-gw: dnet-lpd-gw
  89.     rm -f $(GWDIR)/dnet-lpd-gw
  90.     cp dnet-lpd-gw $(GWDIR)
  91.     chown root $(GWDIR)/dnet-lpd-gw
  92.     chmod 4711 $(GWDIR)/dnet-lpd-gw
  93.  
  94. clean:
  95.     rm -f lpr dnet-lpd-gw *.o
  96.  
  97. #
  98. # various packaging routines.
  99. #
  100. port-lpr.vms: $(PKG)
  101.     /bin/true > port-lpr.vms
  102.     for i in $(PKG) ; do \
  103.         echo '$$ write sys$$output "creating' $$i'"' ; \
  104.         echo '$$ CREATE' $$i ; \
  105.         cat $$i ; \
  106.     done >> port-lpr.vms
  107.     echo '$$ exit' >> port-lpr.vms
  108.  
  109. port-lpr.tar: $(PKG)
  110.     tar cf port-lpr.tar $(PKG)
  111.  
  112. port-lpr.tar.Z.uu: $(PKG)
  113.     tar cf - $(PKG) | compress | uuencode port-lpr.tar.Z > port-lpr.tar.Z.uu
  114.  
  115. port-lpr.uushar: $(PKG)
  116.     for i in $(PKG) ; do uuencode $$i < $$i ; done > port-lpr.uushar
  117.  
  118. port-lpr.shar: $(PKG)
  119.     shar $(PKG) > port-lpr.shar
  120.  
  121. print:
  122.     enscript -2r `ls $(SRCS) | grep '.*\.[ch]'`
  123.