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

  1. # Makefile for GNU m4 sources.
  2. # Copyright (C) 1994 Free Software Foundation, Inc.
  3.  
  4. # This program is free software; you can redistribute it and/or modify
  5. # it under the terms of the GNU General Public License as published by
  6. # the Free Software Foundation; either version 2, or (at your option)
  7. # any later version.
  8.  
  9. # This program is distributed in the hope that it will be useful,
  10. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12. # GNU General Public License for more details.
  13.  
  14. # You should have received a copy of the GNU General Public License
  15. # along with this program; if not, write to the Free Software
  16. # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  17.  
  18. PRODUCT = @PRODUCT@
  19. VERSION = @VERSION@
  20.  
  21. SHELL = /bin/sh
  22. srcdir = @srcdir@
  23. VPATH = @srcdir@
  24.  
  25. CC = @CC@
  26. CFLAGS = @CFLAGS@
  27. CPPFLAGS = @CPPFLAGS@
  28. DEFS = @DEFS@
  29. INSTALL = @INSTALL@
  30. INSTALL_PROGRAM = @INSTALL_PROGRAM@
  31. LDFLAGS = @LDFLAGS@
  32. LIBS = @LIBS@
  33. STACKOVF = @STACKOVF@
  34.  
  35. prefix = @prefix@
  36. exec_prefix = @exec_prefix@
  37. transform = @program_transform_name@
  38. bindir = $(exec_prefix)/bin
  39.  
  40. COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
  41. LINK = $(CC) $(LDFLAGS) -o $@
  42.  
  43. .SUFFIXES:
  44. .SUFFIXES: .c .o
  45. .c.o:
  46.     $(COMPILE) $<
  47.  
  48. ANSI2KNR = @ANSI2KNR@
  49. O = .@U@o
  50.  
  51. .SUFFIXES: ._c ._o
  52. .c._c:
  53.     ./ansi2knr --varargs $< > $@
  54. ._c._o:
  55.     @echo $(COMPILE) $<
  56.     @rm -f _$*.c
  57.     @ln $< _$*.c && $(COMPILE) _$*.c && mv _$*.o $@ && rm _$*.c
  58. .c._o:
  59.     ./ansi2knr --varargs $< > $*._c
  60.     @echo $(COMPILE) $*._c
  61.     @rm -f _$*.c
  62.     @ln $*._c _$*.c && $(COMPILE) _$*.c && mv _$*.o $@ && rm _$*.c
  63.  
  64. INCLUDES = -I.. -I$(srcdir) -I$(srcdir)/../lib
  65.  
  66. HEADERS = m4.h
  67. SOURCES = m4.c builtin.c debug.c eval.c format.c freeze.c input.c \
  68. macro.c output.c path.c stackovf.c symtab.c 
  69. OBJECTS = m4$O builtin$O debug$O eval$O format$O freeze$O input$O \
  70. macro$O output$O path$O $(STACKOVF) symtab$O
  71.  
  72. DISTFILES = Makefile.in ansi2knr.c ansi2knr.1 $(HEADERS) $(SOURCES) \
  73. TAGS
  74.  
  75. all: m4
  76.  
  77. m4: $(OBJECTS) ../lib/libm4.a
  78.     $(LINK) $(OBJECTS) ../lib/libm4.a $(LIBS)
  79.  
  80. $(OBJECTS): $(ANSI2KNR) ../config.h m4.h ../lib/obstack.h
  81. builtin$O: ../lib/regex.h
  82.  
  83. ansi2knr: ansi2knr.o
  84.     $(LINK) ansi2knr.o $(LIBS)
  85.  
  86. install: all
  87.     $(srcdir)/../mkinstalldirs $(bindir)
  88.     $(INSTALL_PROGRAM) m4 $(bindir)/`echo m4 | sed '$(transform)'`
  89.  
  90. uninstall:
  91.     rm -f $(bindir)/`echo m4 | sed '$(transform)'`
  92.  
  93. tags: TAGS
  94.  
  95. TAGS: $(HEADERS) $(SOURCES)
  96.     cd $(srcdir) && etags -i ../lib/TAGS $(HEADERS) $(SOURCES)
  97.  
  98. mostlyclean:
  99.     rm -f *.o *._c *._o core core.*
  100.  
  101. clean: mostlyclean
  102.     rm -f m4
  103.  
  104. distclean: clean
  105.     rm -f Makefile ansi2knr
  106.  
  107. realclean: distclean
  108.     rm -f TAGS
  109.  
  110. dist: $(DISTFILES)
  111.     @echo "Copying distribution files"
  112.     @for file in $(DISTFILES); do \
  113.       ln $(srcdir)/$$file ../$(PRODUCT)-$(VERSION)/src 2> /dev/null \
  114.         || cp -p $(srcdir)/$$file ../$(PRODUCT)-$(VERSION)/src; \
  115.     done
  116.  
  117. Makefile: Makefile.in ../config.status
  118.     cd .. && CONFIG_FILES=src/$@ CONFIG_HEADERS= ./config.status
  119.  
  120. # Tell versions [3.59,3.63) of GNU make not to export all variables.
  121. # Otherwise a system limit (for SysV at least) may be exceeded.
  122. .NOEXPORT:
  123.