home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 8 / FreshFishVol8-CD1.bin / new / util / edit / jade / src / makefile.in < prev    next >
Makefile  |  1994-07-08  |  5KB  |  191 lines

  1. /* Makefile.in -- cpp input for the src directory's Makefile
  2.    Copyright (C) 1993, 1994 John Harper <jsh@ukc.ac.uk>
  3.  
  4.    Jade is free software; you can redistribute it and/or modify it
  5.    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.    Jade is distributed in the hope that it will be useful, but
  10.    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 Jade; see the file COPYING.  If not, write to
  16.    the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  17.  
  18. #ifdef PROFILE
  19.  CFLAGS = -g -pg
  20.  LDFLAGS = -g -pg
  21. #else
  22.  /* The reason for these contradictory flags is so that I can get a binary
  23.     with full debugging information by simply relinking.  */
  24.  CFLAGS = -g
  25.  LDFLAGS = -s
  26. #endif
  27.  
  28. #define MAKEFILE_CONFIG
  29. #include "config.h"
  30.  
  31. COMMON_SRCS =    buffers.c commandline.c commands.c edit.c editcommands.c \
  32.         editrect.c find.c glyphs.c housekeeping.c io.c keys.c lisp.c \
  33.         lispcmds.c lispmach.c main.c misc.c movement.c refresh.c \
  34.         render.c streams.c stringmem.c symbols.c undo.c values.c \
  35.         windows.c
  36. COMMON_HDRS =    jade.h edit.h lisp.h value.h keys.h config.h stringmem.h \
  37.         doc-strings.h
  38.  
  39. X11_SRCS +=    x11_commandline.c x11_display.c x11_eventloop.c x11_keys.c \
  40.         x11_misc.c x11_render.c x11_windows.c
  41. X11_HDRS +=    x11_defs.h x11_windowsys.h
  42.  
  43. UNIX_SRCS +=    lists.c unix_misc.c unix_processes.c unix_memory.c \
  44.         unix_server.c
  45. UNIX_HDRS +=    unix_defs.h
  46.  
  47. AMIGA_SRCS +=    amiga_clipboard.c amiga_commandline.c amiga_display.c \
  48.         amiga_eventloop.c amiga_keys.c amiga_memory.c amiga_menus.c \
  49.         amiga_minrexx.c amiga_misc.c amiga_render.c amiga_server.c \
  50.         amiga_stksize.c amiga_windows.c
  51. AMIGA_HDRS +=    amiga_defs.h amiga_windowsys.h
  52.  
  53. SRCS = $(COMMON_SRCS)
  54. HDRS = $(COMMON_HDRS)
  55.  
  56. RE_LIB = regexp/libregexp.a
  57. LIBS = $(RE_LIB)
  58.  
  59. #ifdef HAVE_X11
  60. SRCS += $(X11_SRCS)
  61. HDRS += $(X11_HDRS)
  62. LIBS += -L$(XLIBDIR) -lX11
  63. #endif /* HAVE_X11 */
  64.  
  65. #ifdef HAVE_UNIX
  66. SRCS += $(UNIX_SRCS)
  67. HDRS += $(UNIX_HDRS)
  68. #endif /* HAVE_UNIX */
  69.  
  70. #ifdef HAVE_AMIGA
  71. SRCS += $(AMIGA_SRCS)
  72. HDRS += $(AMIGA_HDRS)
  73. #endif /* HAVE_AMIGA */
  74.  
  75. OBJS = $(SRCS:.c=.o)
  76.  
  77. /* Redefine how to make `.o' from `.c', the -DJADE_DIR has to be here
  78.    so CFLAGS is available to the user.  */
  79. .c.o :
  80.     $(CC) -c $(CFLAGS) $(CPPFLAGS) -DJADE_DIR=_JADE_DIR -o $@ $<
  81.  
  82. all : jade jadeclient
  83.  
  84. jade : jade_protos.h $(OBJS) $(RE_LIB)
  85.     $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
  86.  
  87. jade_protos.h : stripproto $(SRCS)
  88.     ./stripproto -o $@ $(SRCS)
  89.  
  90. /* I guess that properly this should depend on $(SRCS) but that would mean
  91.    that whenever *any* source file is modified everything has to be re-built!
  92.    This way when a doc-string is changed in a source file you should delete
  93.    the doc-strings.h file to force it to be rebuilt.  */
  94. doc-strings.h : makedoc
  95.     ./makedoc DOC.bare doc-strings.h $(COMMON_SRCS) $(X11_SRCS) \
  96.                      $(UNIX_SRCS) $(AMIGA_SRCS)
  97.     cp DOC.bare ../DOC
  98.  
  99. stripproto : stripproto.o
  100.     $(CC) $(LDFLAGS) -o $@ stripproto.o
  101.  
  102. makedoc : makedoc.o
  103.     $(CC) $(LDFLAGS) -o $@ makedoc.o
  104.  
  105. /* Doesn't check if libregexp.a is up to date -- just that it exists  */
  106. $(RE_LIB) :
  107.     (cd regexp && $(MAKE))
  108.  
  109. #ifdef HAVE_UNIX
  110. jadeclient : unix_client.o
  111.     $(CC) $(LDFLAGS) -o $@ unix_client.o
  112. #endif
  113.  
  114. #ifdef HAVE_AMIGA
  115. jadeclient : amiga_client.o
  116.     $(CC) $(LDFLAGS) -o $@ amiga_client.o
  117. #endif
  118.  
  119. nobak :
  120.     -rm -f *~
  121.  
  122. clean : nobak
  123.     -rm -f *.o jade_protos.h doc-strings.h core
  124.  
  125. realclean : clean
  126.     -rm -f jade jadeclient DOC.bare makedoc stripproto
  127.     -rm -f config.* Makefile
  128.     -(cd regexp && $(MAKE) clean)
  129.  
  130. buffers.o    : $(HDRS)
  131. commandline.o    : $(HDRS)
  132. commands.o    : $(HDRS)
  133. edit.o        : $(HDRS)
  134. editcommands.o    : $(HDRS)
  135. editrect.o    : $(HDRS)
  136. find.o        : $(HDRS)
  137. glyphs.o    : $(HDRS)
  138. housekeeping.o    : $(HDRS)
  139. io.o        : $(HDRS)
  140. keys.o        : $(HDRS)
  141. lisp.o        : $(HDRS)
  142. lispcmds.o    : $(HDRS)
  143. lispmach.o    : $(HDRS)
  144. main.o        : $(HDRS) revision.h
  145. misc.o        : $(HDRS) revision.h
  146. movement.o    : $(HDRS)
  147. refresh.o    : $(HDRS)
  148. render.o    : $(HDRS)
  149. streams.o    : $(HDRS)
  150. stringmem.o    : $(HDRS)
  151. symbols.o    : $(HDRS)
  152. undo.o        : $(HDRS)
  153. values.o    : $(HDRS)
  154. windows.o    : $(HDRS)
  155.  
  156. #ifdef HAVE_X11
  157. x11_commandline.o : $(HDRS)
  158. x11_display.o    : $(HDRS)
  159. x11_eventloop.o : $(HDRS)
  160. x11_keys.o    : $(HDRS)
  161. x11_misc.o    : $(HDRS)
  162. x11_render.o    : $(HDRS)
  163. x11_windows.o    : $(HDRS) revision.h
  164. #endif /* HAVE_X11 */
  165.  
  166. #ifdef HAVE_UNIX
  167. unix_memory.o    : $(HDRS)
  168. unix_misc.o    : $(HDRS)
  169. unix_processes.o : $(HDRS)
  170. unix_server.o    : $(HDRS)
  171. #endif /* HAVE_UNIX */
  172.  
  173. #ifdef HAVE_AMIGA
  174. amiga_client.o    : amiga_server.h
  175. amiga_clipboard.o : $(HDRS)
  176. amiga_commandline.o: $(HDRS)
  177. amiga_display.o : $(HDRS)
  178. amiga_eventloop.o : $(HDRS)
  179. amiga_keys.o    : $(HDRS)
  180. amiga_memory.o    : $(HDRS)
  181. amiga_menus.o    : $(HDRS)
  182. amiga_minrexx.o : $(HDRS)
  183. amiga_misc.o    : $(HDRS)
  184. amiga_render.o    : $(HDRS)
  185. amiga_server.o    : $(HDRS) amiga_server.h
  186. amiga_stksize.o : $(HDRS)
  187. amiga_windows.o : $(HDRS) revision.h
  188. #else
  189. lists.o        : $(HDRS)
  190. #endif /* HAVE_AMIGA */
  191.