home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / diffutils-2.7-src.tgz / tar.out / fsf / diffutils / Makefile.in < prev    next >
Makefile  |  1996-09-28  |  6KB  |  215 lines

  1. # Makefile for GNU DIFF
  2. # Copyright (C) 1988,1989,1991,1992,1993,1994 Free Software Foundation, Inc.
  3. #
  4. # This file is part of GNU DIFF.
  5. #
  6. # GNU DIFF is free software; you can redistribute it and/or modify
  7. # it under the terms of the GNU General Public License as published by
  8. # the Free Software Foundation; either version 2, or (at your option)
  9. # any later version.
  10. #
  11. # GNU DIFF is distributed in the hope that it will be useful,
  12. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. # GNU General Public License for more details.
  15. #
  16. # You should have received a copy of the GNU General Public License
  17. # along with GNU DIFF; see the file COPYING.  If not, write to
  18. # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  19.  
  20. #### Start of system configuration section. ####
  21.  
  22. srcdir = @srcdir@
  23. VPATH = @srcdir@
  24.  
  25. CC = @CC@
  26. INSTALL = @INSTALL@
  27. INSTALL_PROGRAM = @INSTALL_PROGRAM@
  28. INSTALL_DATA = @INSTALL_DATA@
  29. MAKEINFO = makeinfo
  30. TEXI2DVI = texi2dvi
  31. DVIPS = dvips
  32.  
  33. CPPFLAGS = @CPPFLAGS@
  34. DEFS = @DEFS@
  35. CFLAGS = @CFLAGS@
  36. LDFLAGS = @LDFLAGS@
  37. LIBS = @LIBS@
  38. LIBOBJS = @LIBOBJS@
  39.  
  40. # Some System V machines do not come with libPW.
  41. # If this is true for you, use the GNU alloca.o here.
  42. ALLOCA = @ALLOCA@
  43.  
  44. prefix = @prefix@
  45. exec_prefix = @exec_prefix@
  46. edit_program_name = sed '@program_transform_name@'
  47.  
  48. bindir = $(exec_prefix)/bin
  49.  
  50. infodir = $(prefix)/info
  51. guidedir = $(prefix)/guide
  52. dvidir = $(prefix)/dvi
  53. psdir = $(prefix)/ps
  54.  
  55. DEFAULT_EDITOR_PROGRAM = $(bindir)/emacs
  56. DIFF_PROGRAM = $(bindir)/`echo diff | $(edit_program_name)`
  57. NULL_DEVICE = /dev/null
  58. PR_PROGRAM = $(bindir)/pr
  59.  
  60. #### End of system configuration section. ####
  61.  
  62. SHELL = /bin/sh
  63.  
  64. # The source files for all of the programs.
  65. srcs=diff.c analyze.c cmpbuf.c cmpbuf.h io.c context.c ed.c normal.c ifdef.c \
  66.     util.c dir.c memchr.c waitpid.c \
  67.     version.c diff.h regex.c regex.h side.c system.h \
  68.     diff3.c sdiff.c cmp.c error.c xmalloc.c getopt.c getopt1.c getopt.h \
  69.     fnmatch.c fnmatch.h alloca.c
  70. distfiles = $(srcs) README INSTALL NEWS diagmeet.note Makefile.in \
  71.     stamp-h.in config.hin configure configure.in COPYING ChangeLog \
  72.     diff.texi diff.info* diff.guide diff.dvi diff.ps texinfo.tex \
  73.     install-sh mkinstalldirs
  74.  
  75. PROGRAMS = cmp diff diff3 sdiff
  76.  
  77. all: $(PROGRAMS) info guide dvi ps
  78.  
  79. COMPILE = $(CC) -c $(CPPFLAGS) $(DEFS) -I. -I$(srcdir) $(CFLAGS)
  80.  
  81. .c.o:
  82.     $(COMPILE) $<
  83.  
  84. diff_o = diff.o analyze.o cmpbuf.o dir.o io.o util.o \
  85.     context.o ed.o ifdef.o normal.o side.o \
  86.     fnmatch.o getopt.o getopt1.o regex.o version.o $(ALLOCA) $(LIBOBJS)
  87. diff: $(diff_o)
  88.     $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(diff_o) $(LIBS)
  89.  
  90. diff3_o = diff3.o getopt.o getopt1.o version.o $(LIBOBJS)
  91. diff3: $(diff3_o)
  92.     $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(diff3_o) $(LIBS)
  93.  
  94. sdiff_o = sdiff.o getopt.o getopt1.o version.o $(LIBOBJS)
  95. sdiff: $(sdiff_o)
  96.     $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(sdiff_o) $(LIBS)
  97.  
  98. cmp_o = cmp.o cmpbuf.o error.o getopt.o getopt1.o xmalloc.o version.o $(LIBOBJS)
  99. cmp: $(cmp_o)
  100.     $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(cmp_o) $(LIBS)
  101.  
  102. info: diff.info
  103. diff.info: diff.texi
  104.     $(MAKEINFO) $(srcdir)/diff.texi --output=$@
  105.  
  106. dvi: diff.dvi
  107. diff.dvi: diff.texi
  108.     $(TEXI2DVI) $(srcdir)/diff.texi
  109.  
  110. guide: diff.guide
  111. diff.guide: diff.texi
  112.     $(MAKEINFO) --amiga $(srcdir)/diff.texi --output=$@
  113.  
  114. ps: diff.ps
  115. diff.ps: diff.dvi
  116.     $(DVIPS) -o $@ $?
  117.  
  118. $(diff_o): diff.h system.h
  119. cmp.o diff3.o sdiff.o: system.h
  120. context.o diff.o regex.o: regex.h
  121. cmp.o diff.o diff3.o sdiff.o getopt.o getopt1.o: getopt.h
  122. diff.o fnmatch.o: fnmatch.h
  123. analyze.o cmpbuf.o cmp.o: cmpbuf.h
  124.  
  125. cmp.o: cmp.c
  126.     $(COMPILE) -DNULL_DEVICE=\"$(NULL_DEVICE)\" $(srcdir)/cmp.c
  127.  
  128. diff3.o: diff3.c
  129.     $(COMPILE) -DDIFF_PROGRAM=\"$(DIFF_PROGRAM)\" $(srcdir)/diff3.c
  130.  
  131. sdiff.o: sdiff.c
  132.     $(COMPILE) -DDEFAULT_EDITOR_PROGRAM=\"$(DEFAULT_EDITOR_PROGRAM)\" \
  133.         -DDIFF_PROGRAM=\"$(DIFF_PROGRAM)\" $(srcdir)/sdiff.c
  134.  
  135. util.o: util.c
  136.     $(COMPILE) -DPR_PROGRAM=\"$(PR_PROGRAM)\" $(srcdir)/util.c
  137.  
  138. TAGS: $(srcs)
  139.     etags $(srcs)
  140.  
  141. clean:
  142.     rm -f *.o $(PROGRAMS) core
  143.     rm -f *.aux *.cp *.cps *.dvi *.fn *.fns *.ky *.kys *.log
  144.     rm -f *.pg *.pgs *.toc *.tp *.tps *.vr *.vrs
  145.  
  146. mostlyclean: clean
  147.  
  148. distclean: clean
  149.     rm -f Makefile config.cache config.h config.log config.status stamp-h
  150.  
  151. realclean: distclean
  152.     rm -f TAGS *.info* *.guide *.dvi *.ps
  153.  
  154. install: all installdirs
  155.     for p in $(PROGRAMS); do \
  156.       $(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p | $(edit_program_name)`; \
  157.     done
  158.     { test -f diff.info || cd $(srcdir); } && \
  159.     for f in diff.info*; do \
  160.       $(INSTALL_DATA) $$f $(infodir)/$$f; \
  161.     done
  162.     $(INSTALL_DATA) diff.guide $(guidedir)/diff.guide
  163.     $(INSTALL_DATA) diff.dvi $(dvidir)/diff.dvi
  164.     $(INSTALL_DATA) diff.ps $(psdir)/diff.ps
  165.  
  166. installdirs:
  167.     $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(guidedir) $(dvidir) $(psdir)
  168.  
  169. # We need more tests.
  170. check:
  171.     ./cmp cmp cmp
  172.     ./diff diff diff
  173.     ./diff3 diff3 diff3 diff3
  174.     ./sdiff sdiff sdiff
  175.  
  176. uninstall:
  177.     for p in $(PROGRAMS); do \
  178.       rm -f $(bindir)/`echo $$p | $(edit_program_name)`; \
  179.     done
  180.     rm -f $(infodir)/diff.info*
  181.     rm -f $(guidedir)/diff.guide $(dvidir)/diff.dvi $(psdir)/diff.ps
  182.  
  183. configure: configure.in
  184.     cd $(srcdir) && autoconf
  185.  
  186. # autoheader might not change config.hin.
  187. config.hin: stamp-h.in
  188. stamp-h.in: configure.in
  189.     cd $(srcdir) && autoheader
  190.     date > $(srcdir)/stamp-h.in
  191.  
  192. config.status: configure
  193.     ./config.status --recheck
  194.  
  195. # config.status might not change config.h, but it changes stamp-h.
  196. config.h: stamp-h
  197. stamp-h: config.hin config.status
  198.     ./config.status
  199. Makefile: Makefile.in config.status
  200.     ./config.status
  201.  
  202. dist: $(distfiles)
  203.     echo diffutils-`sed -e '/version_string/!d' -e 's/[^0-9]*\([0-9a-z.]*\).*/\1/' -e q version.c` > .fname
  204.     rm -rf `cat .fname`
  205.     mkdir `cat .fname`
  206.     -ln $(distfiles) `cat .fname`
  207.     for file in $(distfiles); do \
  208.       [ -r `cat .fname`/$$file ] || cp -p $$file `cat .fname` || exit; \
  209.     done
  210.     tar -chf - `cat .fname` | gzip >`cat .fname`.tar.gz
  211.     rm -rf `cat .fname` .fname
  212.  
  213. # Prevent GNU make v3 from overflowing arg limit on SysV.
  214. .NOEXPORT:
  215.