home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / NETWORK / netpbm_src.lzh / NETPBM / PBM / Makefile.std < prev    next >
Makefile  |  1996-11-18  |  6KB  |  188 lines

  1. # Makefile for pbm tools.
  2. #
  3. # Copyright (C) 1989, 1991 by Jef Poskanzer.
  4. #
  5. # Permission to use, copy, modify, and distribute this software and its
  6. # documentation for any purpose and without fee is hereby granted, provided
  7. # that the above copyright notice appear in all copies and that both that
  8. # copyright notice and this permission notice appear in supporting
  9. # documentation.  This software is provided "as is" without express or
  10. # implied warranty.
  11.  
  12. # Default values, usually overridden by top-level Makefile.
  13. #CC =        cc
  14. CC =        gcc -ansi -pedantic -fpcc-struct-return
  15. CFLAGS =    -O
  16. #CFLAGS =    -g
  17. #CFLAGS =    -g -O
  18. TIFFDEF =       -DLIBTIFF
  19. #LDFLAGS =    -s
  20. LDFLAGS =    
  21. INSTALLBINARIES =    /usr/new/pbm
  22. INSTALLMANUALS1 =    /usr/man/man1
  23. SUFFIXMANUALS1 =    1
  24. INSTALLMANUALS3 =    /usr/man/man3
  25. SUFFIXMANUALS3 =    3
  26. INSTALLMANUALS5 =    /usr/man/man5
  27. SUFFIXMANUALS5 =    5
  28. MANCP =            cp
  29.  
  30. SHELL =        /bin/sh
  31. INCLUDE =    -I..
  32. ALLCFLAGS =    $(CFLAGS) $(TIFFDEF) $(INCLUDE)
  33. LIBPBM =    libpbm.a
  34. DEFPBM =    pbm.h ../pbmplus.h
  35.  
  36. PORTBINARIES =    atktopbm brushtopbm cmuwmtopbm g3topbm \
  37.         icontopbm gemtopbm macptopbm mgrtopbm \
  38.         pbmclean pbmlife pbmmake pbmmask pbmpscale \
  39.         pbmreduce pbmtext \
  40.         pbmto10x pbmto4425 pbmtoascii pbmtoatk \
  41.         pbmtobbnbg pbmtocmuwm \
  42.         pbmtoepsi pbmtoepson \
  43.         pbmtog3 pbmtogem pbmtogo pbmtoicon pbmtolj \
  44.         pbmtoln03 pbmtolps pbmtomacp pbmtomgr \
  45.         pbmtopi3 pbmtoplot pbmtoptx \
  46.         pbmtox10bm pbmtoxbm pbmtoybm pbmtozinc \
  47.         pbmupc pi3topbm pktopbm xbmtopbm ybmtopbm
  48. MATHBINARIES =    pbmtopk
  49. BINARIES =    $(PORTBINARIES) $(MATHBINARIES)
  50.  
  51. OBJECTS =    atktopbm.o brushtopbm.o cmuwmtopbm.o g3topbm.o \
  52.         icontopbm.o gemtopbm.o macptopbm.o mgrtopbm.o \
  53.         pbmclean.o pbmlife.o pbmmake.o pbmmask.o pbmpscale.o \
  54.         pbmreduce.o pbmtext.o \
  55.         pbmto10x.o pbmto4425.o pbmtoascii.o pbmtoatk.o \
  56.         pbmtobbnbg.o pbmtocmuwm.o \
  57.         pbmtoepsi.o pbmtoepson.o \
  58.         pbmtog3.o pbmtogem.o pbmtogo.o pbmtoicon.o pbmtolj.o \
  59.         pbmtoln03.o pbmtolps.o pbmtomacp.o pbmtomgr.o \
  60.         pbmtopi3.o pbmtoplot.o pbmtoptx.o \
  61.         pbmtox10bm.o pbmtoxbm.o pbmtoybm.o pbmtozinc.o \
  62.         pbmupc.o pi3topbm.o pktopbm.o xbmtopbm.o ybmtopbm.o \
  63.         pbmtopk.o
  64.  
  65. MANUALS1 =    $(BINARIES)
  66. MANUALS3 =    libpbm
  67. MANUALS5 =    pbm
  68.  
  69.  
  70. #all:        binaries
  71. all:        merge
  72. #install:    install.bin
  73. install:    install.merge
  74.  
  75.  
  76. binaries:    $(BINARIES)
  77.  
  78. install.bin:    binaries
  79.     cd $(INSTALLBINARIES) ; rm -f $(BINARIES)
  80.     cp $(BINARIES) $(INSTALLBINARIES)
  81.  
  82.  
  83. merge:        pbmmerge
  84. pbmmerge:    pbmmerge.c $(OBJECTS) $(LIBPBM)
  85.     $(CC) $(ALLCFLAGS) $(LDFLAGS) -o $@ $@.c $(OBJECTS) $(LIBPBM)
  86.  
  87. install.merge:    install.pbmmerge
  88. install.pbmmerge:    pbmmerge
  89.     cd $(INSTALLBINARIES) ; rm -f $(BINARIES)
  90.     cp pbmmerge $(INSTALLBINARIES)
  91.     cd $(INSTALLBINARIES) ; for i in $(BINARIES) ; do ln pbmmerge $$i ; done
  92.     rm -f $(INSTALLBINARIES)/pbmmerge
  93.  
  94.  
  95. install.man:
  96.     for i in $(MANUALS1) ; do \
  97.         rm -f $(INSTALLMANUALS1)/$$i.$(SUFFIXMANUALS1) ; \
  98.         $(MANCP) $$i.1 $(INSTALLMANUALS1)/$$i.$(SUFFIXMANUALS1) ; \
  99.     done
  100.     for i in $(MANUALS3) ; do \
  101.         rm -f $(INSTALLMANUALS3)/$$i.$(SUFFIXMANUALS3) ; \
  102.         $(MANCP) $$i.3 $(INSTALLMANUALS3)/$$i.$(SUFFIXMANUALS3) ; \
  103.     done
  104.     for i in $(MANUALS5) ; do \
  105.         rm -f $(INSTALLMANUALS5)/$$i.$(SUFFIXMANUALS5) ; \
  106.         $(MANCP) $$i.5 $(INSTALLMANUALS5)/$$i.$(SUFFIXMANUALS5) ; \
  107.     done
  108.  
  109. # Rule for plain programs.
  110. $(PORTBINARIES):    $(DEFPBM) $(LIBPBM)
  111.     $(CC) $(ALLCFLAGS) $(LDFLAGS) -o $@ $@.c $(LIBPBM)
  112.  
  113. # Rule for math-dependent programs.
  114. $(MATHBINARIES):    $(DEFPBM) $(LIBPBM)
  115.     $(CC) $(ALLCFLAGS) $(LDFLAGS) -o $@ $@.c -lm $(LIBPBM)
  116.  
  117. # Rule for objects.
  118. $(OBJECTS):    $(DEFPBM)
  119.     $(CC) $(ALLCFLAGS) "-Dmain=$*_main" -c $*.c
  120.  
  121. # And library.
  122. lib:        $(LIBPBM)
  123. $(LIBPBM):    libpbm1.o libpbm2.o libpbm3.o libpbm4.o libpbm5.o
  124.     -rm -f $(LIBPBM)
  125.     ar rc $(LIBPBM) libpbm1.o libpbm2.o libpbm3.o libpbm4.o libpbm5.o
  126.     -ranlib $(LIBPBM)
  127.  
  128. libpbm1.o:    $(DEFPBM) ../version.h ../compile.h libpbm.h libpbm1.c
  129.     $(CC) $(ALLCFLAGS) -c libpbm1.c
  130. libpbm2.o:    $(DEFPBM) libpbm.h libpbm2.c
  131.     $(CC) $(ALLCFLAGS) -c libpbm2.c
  132. libpbm3.o:    $(DEFPBM) libpbm.h libpbm3.c
  133.     $(CC) $(ALLCFLAGS) -c libpbm3.c
  134. libpbm4.o:    $(DEFPBM) libpbm.h libpbm4.c
  135.     $(CC) $(ALLCFLAGS) -c libpbm4.c
  136. libpbm5.o:    $(DEFPBM) pbmfont.h libpbm5.c
  137.     $(CC) $(ALLCFLAGS) -c libpbm5.c
  138.  
  139. # Other dependencies.
  140. atktopbm atktopbm.o:        atktopbm.c
  141. brushtopbm brushtopbm.o:    brushtopbm.c
  142. cmuwmtopbm cmuwmtopbm.o:    cmuwmtopbm.c cmuwm.h
  143. g3topbm g3topbm.o:        g3topbm.c g3.h
  144. icontopbm icontopbm.o:        icontopbm.c
  145. gemtopbm gemtopbm.o:        gemtopbm.c
  146. macptopbm macptopbm.o:        macptopbm.c macp.h
  147. mgrtopbm mgrtopbm.o:        mgrtopbm.c mgr.h
  148. pbmclean pbmclean.o:        pbmclean.c
  149. pbmlife pbmlife.o:        pbmlife.c
  150. pbmmake pbmmake.o:        pbmmake.c
  151. pbmmask pbmmask.o:        pbmmask.c
  152. pbmpscale pbmpscale.o:        pbmpscale.c
  153. pbmreduce pbmreduce.o:        pbmreduce.c
  154. pbmtext pbmtext.o:        pbmtext.c pbmfont.h
  155. pbmto10x pbmto10x.o:        pbmto10x.c
  156. pbmto4425 pbmto4425.o:        pbmto4425.c
  157. pbmtoascii pbmtoascii.o:    pbmtoascii.c
  158. pbmtoatk pbmtoatk.o:        pbmtoatk.c
  159. pbmtobbnbg pbmtobbnbg.o:    pbmtobbnbg.c
  160. pbmtocmuwm pbmtocmuwm.o:    pbmtocmuwm.c cmuwm.h
  161. pbmtoepson pbmtoepson.o:    pbmtoepson.c
  162. pbmtog3 pbmtog3.o:        pbmtog3.c g3.h
  163. pbmtogem pbmtogem.o:        pbmtogem.c
  164. pbmtogo pbmtogo.o:        pbmtogo.c
  165. pbmtoicon pbmtoicon.o:        pbmtoicon.c
  166. pbmtolj pbmtolj.o:        pbmtolj.c
  167. pbmtoln03 pbmtoln03.o:        pbmtoln03.c
  168. pbmtolps pbmtolps.o:        pbmtolps.c
  169. pbmtomacp pbmtomacp.o:        pbmtomacp.c macp.h
  170. pbmtomgr pbmtomgr.o:        pbmtomgr.c mgr.h
  171. pbmtopi3 pbmtopi3.o:        pbmtopi3.c
  172. pbmtopk pbmtopk.o:        pbmtopk.c
  173. pbmtoplot pbmtoplot.o:        pbmtoplot.c
  174. pbmtoptx pbmtoptx.o:        pbmtoptx.c
  175. pbmtox10bm pbmtox10bm.o:    pbmtox10bm.c
  176. pbmtoxbm pbmtoxbm.o:        pbmtoxbm.c
  177. pbmtoybm pbmtoybm.o:        pbmtoybm.c
  178. pbmtozinc pbmtozinc.o:        pbmtozinc.c
  179. pbmupc pbmupc.o:        pbmupc.c
  180. pi3topbm pi3topbm.o:        pi3topbm.c
  181. pktopbm pktopbm.o:        pktopbm.c
  182. xbmtopbm xbmtopbm.o:        xbmtopbm.c
  183. ybmtopbm ybmtopbm.o:        ybmtopbm.c
  184. pbmtoepsi pbmtoepsi.o:        pbmtoepsi.c
  185.  
  186. clean:
  187.     -rm -f *.o *.a *.cat *~ core $(BINARIES) pbmmerge
  188.