home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / emacs-19.28-src.tgz / tar.out / fsf / emacs / src / xmakefile < prev    next >
Makefile  |  1996-09-28  |  11KB  |  228 lines

  1. srcdir=/src
  2. VPATH=""
  3. CC=sc
  4. CPP=/cpp/cpp
  5. CFLAGS=
  6. LN_S=
  7. MAKE=gmake
  8. dot = .
  9. lispdir = /lisp/
  10. libsrc = /lib-src/
  11. etc = /etc/
  12. shortnamesdir = $(dot)$(dot)/shortnames/
  13. cppdir = /cpp/
  14. oldXMenudir = $(dot)$(dot)/oldXMenu/
  15. lwlibdir = $(dot)$(dot)/lwlib/
  16. M_FILE = ${srcdir}/m/amiga.h
  17. S_FILE = #${srcdir}/s/amigaos.h #CHFIXME: reactivate
  18. config_h = config.h $(M_FILE) $(S_FILE)
  19.  
  20. MYCPPFLAGS=def static 
  21. LDFLAGS=
  22. C_SWITCH_SYSTEM=
  23.  
  24. SHELL=/bin/sh
  25. STARTFILES = lib:c.o firstfile.o
  26. ALL_CFLAGS=def emacs def HAVE_CONFIG_H $(MYCPPFLAGS) idir ${srcdir}       ${CFLAGS}
  27. .c.o:
  28.     $(CC) $(CPPFLAGS) $(ALL_CFLAGS) $< OBJNAME=t:$*.o
  29.     @copy t:$*.o $*.o
  30.     @rm t:$*.o
  31.  
  32. GNULIB_VAR =
  33. LD=ld
  34. ALL_LDFLAGS =    $(LDFLAGS)
  35. amigasrcs=amiga_clipboard.c amiga_tty.c amiga_serial.c \
  36.     amiga_screen.c amiga_menu.c amiga_malloc.c \
  37.         amiga_rexx.c simplerexx.c amiga_term.c amiga_fns.c #amiga_select.c
  38. srcs=    dispnew.c frame.c scroll.c xdisp.c window.c     term.c cm.c emacs.c keyboard.c macros.c keymap.c amiga_sysdep.c     buffer.c filelock.c insdel.c marker.c      minibuf.c fileio.c dired.c filemode.c     cmds.c casetab.c casefiddle.c indent.c search.c regex.c undo.c     alloc.c data.c doc.c editfns.c callint.c     eval.c floatfns.c fns.c print.c lread.c     abbrev.c syntax.c amiga_dump.c mocklisp.c bytecode.c     process.c callproc.c     doprnt.c getloadavg.c ${amigasrcs}
  39. amigaobj=amiga_clipboard.o amiga_tty.o amiga_serial.o \
  40.     amiga_screen.o amiga_menu.o amiga_malloc.o \
  41.         amiga_rexx.o simplerexx.o amiga_term.o amiga_xmenu.o amiga_fns.o
  42. obj=    dispnew.o frame.o scroll.o xdisp.o window.o     term.o cm.o $(XOBJ)     emacs.o keyboard.o macros.o keymap.o amiga_sysdep.o     buffer.o filelock.o insdel.o marker.o      minibuf.o fileio.o dired.o filemode.o     cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o     alloc.o data.o doc.o editfns.o callint.o     eval.o floatfns.o fns.o print.o lread.o     abbrev.o syntax.o amiga_dump.o mocklisp.o bytecode.o     process.o callproc.o     doprnt.o getloadavg.o intervals.o textprop.o ${amigaobj}
  43. SOME_MACHINE_OBJECTS = #${amigaobj}
  44. termcapobj = termcap.o tparam.o
  45. mallocobj = #malloc.o
  46. allocaobj = oldalloca.o
  47. widgetobj=
  48.  
  49. otherobj= $(termcapobj) lastfile.o $(mallocobj) $(allocaobj) $(widgetobj)
  50. lisp=     ${lispdir}abbrev.elc     ${lispdir}buff-menu.elc     ${lispdir}byte-run.elc     ${lispdir}c-mode.elc     ${lispdir}files.elc     ${lispdir}fill.elc                    ${lispdir}help.elc     ${lispdir}indent.elc     ${lispdir}isearch.elc     ${lispdir}lisp-mode.elc     ${lispdir}lisp.elc     ${lispdir}loaddefs.el     ${lispdir}map-ynp.elc     ${lispdir}page.elc     ${lispdir}paragraphs.elc     ${lispdir}paths.el     ${lispdir}register.elc     ${lispdir}replace.elc     ${lispdir}simple.elc     ${lispdir}startup.el     ${lispdir}subr.elc     ${lispdir}text-mode.elc     ${lispdir}vc-hooks.elc               ${lispdir}window.elc     ${lispdir}version.el
  51. LIBES = $(LIBX)       -lg $(GNULIB_VAR)  -lc $(GNULIB_VAR)
  52.  
  53. all: emacs
  54.  
  55. emacs: temacs ${etc}DOC ${lisp}
  56.     /src/temacs -batch -l loadup dump
  57.  
  58. ${etc}DOC: ${libsrc}make-docfile ${obj} ${lisp}
  59.     -rm -f ${etc}DOC
  60.     ${libsrc}make-docfile -o ${etc}DOC -f < <
  61. ${obj}
  62. ${SOME_MACHINE_OBJECTS}       
  63. ${lisp} 
  64. ${amigalisp}
  65.  
  66. ${libsrc}make-docfile:
  67.     sc link {libsrc}make-docfile.c
  68.  
  69. temacs:  $(LOCALCPP) $(SHORT) $(STARTFILES) $(OLDXMENU) ${obj} ${otherobj}   prefix-args
  70.     slink <with <
  71. from ${STARTFILES} $(obj)
  72. $(otherobj)
  73. to t:temacs
  74. lib     //unix/src/unix.lib lib:scmieee.lib lib:sc.lib lib:amiga.lib
  75. addsym
  76. batch
  77. <
  78.     copy t:temacs temacs
  79.     rm t:temacs
  80.  
  81. protos.h: amiga_fns_protos.h amiga_screen_protos.h amiga_menu_protos.h amiga_tty_protos.h \
  82.     amiga_term_protos.h amiga_xmenu_protos.h
  83.  
  84. amiga_fns_protos.h: amiga_fns.c
  85.     $(CC) $(ALL_CFLAGS) DEF GENPROTO GENPROTO NOGenProtoTypeDEFs $<
  86. amiga_menu_protos.h: amiga_menu.c
  87.     $(CC) $(ALL_CFLAGS) DEF GENPROTO GENPROTO NOGenProtoTypeDEFs $<
  88. amiga_screen_protos.h: amiga_screen.c
  89.     $(CC) $(ALL_CFLAGS) DEF GENPROTO GENPROTO NOGenProtoTypeDEFs $<
  90. amiga_term_protos.h: amiga_term.c
  91.     $(CC) $(ALL_CFLAGS) DEF GENPROTO GENPROTO NOGenProtoTypeDEFs $<
  92. amiga_tty_protos.h: amiga_tty.c
  93.     $(CC) $(ALL_CFLAGS) DEF GENPROTO GENPROTO NOGenProtoTypeDEFs $<
  94. amiga_xmenu_protos.h: amiga_xmenu.c
  95.     $(CC) $(ALL_CFLAGS) DEF GENPROTO GENPROTO NOGenProtoTypeDEFs $<
  96.  
  97.  
  98. amiga_malloc.o: amiga_malloc.c amiga.h config.h  
  99.         $(CC) $(ALL_CFLAGS) parms=both amiga_malloc.c
  100.  
  101. amiga_select.o: amiga_select.c 
  102.         $(CC) $(ALL_CFLAGS) parms=both amiga_select.c
  103.  
  104. prefix-args: prefix-args.c $(config_h)
  105.     $(CC) $(ALL_CFLAGS) ${srcdir}/prefix-args.c LINK to prefix-args
  106.  
  107. CPP = $(CC) -E
  108. paths.h: paths.h.in
  109.     @echo "The file paths.h needs to be set up from paths.h.in."
  110.     @echo "Consult the file \`INSTALL' for instructions for building Emacs."
  111.     exit 1
  112. config.h: config.h.in
  113.     @echo "The file config.h needs to be set up from config.h.in."
  114.     @echo "Consult the file \`INSTALL' for instructions for building Emacs."
  115.     exit 1
  116. alloca.o : alloca.s $(config_h)
  117.     cp ${srcdir}/alloca.s allocatem.c
  118.     $(CPP) $(CPPFLAGS) $(ALL_CFLAGS) allocatem.c |     sed -e 's/ //' -e 's/^#.*//' |     sed -n -e '/^..*$$/p' > allocax.s
  119.     -rm -f alloca.o
  120.     $(CC) -c allocax.s
  121.     mv allocax.o alloca.o
  122.     rm allocax.s allocatem.c
  123. abbrev.o : abbrev.c buffer.h commands.h $(config_h)
  124. buffer.o : buffer.c buffer.h commands.h window.h     blockinput.h $(config_h)
  125. callint.o : callint.c window.h commands.h buffer.h mocklisp.h    keyboard.h $(config_h)
  126. callproc.o : callproc.c paths.h buffer.h commands.h $(config_h)     process.h systty.h syssignal.h
  127. casefiddle.o : casefiddle.c syntax.h commands.h buffer.h $(config_h)
  128. casetab.o : casetab.c buffer.h $(config_h)
  129. cm.o : cm.c cm.h termhooks.h $(config_h)
  130. cmds.o : cmds.c syntax.h buffer.h commands.h $(config_h)
  131. pre-crt0.o : pre-crt0.c
  132. crt0.o : crt0.c $(config_h)
  133.     $(CC) -c $(ALL_CFLAGS)   ${srcdir}/crt0.c
  134. dired.o : dired.c commands.h buffer.h $(config_h) regex.h
  135. dispnew.o : dispnew.c commands.h frame.h window.h buffer.h dispextern.h    termchar.h termopts.h termhooks.h cm.h disptab.h systty.h systime.h $(config_h)
  136. doc.o : doc.c $(config_h) paths.h buffer.h keyboard.h
  137. doprnt.o : doprnt.c
  138. editfns.o : editfns.c window.h buffer.h systime.h  $(config_h)
  139. emacs.o : emacs.c commands.h systty.h syssignal.h process.h  $(config_h)
  140. fileio.o : fileio.c window.h buffer.h systime.h  $(config_h)
  141. filelock.o : filelock.c buffer.h paths.h $(config_h)
  142. filemode.o : filemode.c  $(config_h)
  143. getloadavg.o : getloadavg.c $(config_h)
  144. indent.o : indent.c frame.h window.h indent.h buffer.h $(config_h) termchar.h    termopts.h disptab.h
  145. insdel.o : insdel.c window.h buffer.h  blockinput.h $(config_h)
  146. keyboard.o : keyboard.c termchar.h termhooks.h termopts.h buffer.h    commands.h frame.h window.h macros.h disptab.h keyboard.h syssignal.h    systty.h systime.h dispextern.h intervals.h blockinput.h $(config_h)
  147. keymap.o : keymap.c buffer.h commands.h keyboard.h termhooks.h blockinput.h    $(config_h)
  148. lastfile.o : lastfile.c  $(config_h)
  149. macros.o : macros.c window.h buffer.h commands.h macros.h $(config_h)
  150. malloc.o : malloc.c $(config_h)
  151. gmalloc.o : gmalloc.c $(config_h)
  152. ralloc.o : ralloc.c $(config_h)
  153. vm-limit.o : vm-limit.c mem-limits.h $(config_h)
  154. marker.o : marker.c buffer.h $(config_h)
  155. minibuf.o : minibuf.c syntax.h dispextern.h frame.h window.h    buffer.h commands.h $(config_h)
  156. mocklisp.o : mocklisp.c buffer.h $(config_h)
  157. process.o : process.c process.h buffer.h window.h termhooks.h termopts.h    commands.h syssignal.h systime.h systty.h syswait.h frame.h $(config_h)
  158. regex.o : regex.c syntax.h buffer.h $(config_h) regex.h
  159. frame.o : frame.c xterm.h window.h frame.h termhooks.h commands.h keyboard.h    buffer.h $(config_h)
  160. scroll.o : scroll.c termchar.h $(config_h) dispextern.h frame.h
  161. search.o : search.c regex.h commands.h buffer.h syntax.h blockinput.h $(config_h)
  162. syntax.o : syntax.c syntax.h buffer.h commands.h $(config_h)
  163. sysdep.o : sysdep.c $(config_h) dispextern.h termhooks.h termchar.h termopts.h    frame.h syssignal.h systty.h systime.h syswait.h blockinput.h window.h
  164. term.o : term.c termchar.h termhooks.h termopts.h $(config_h) cm.h frame.h    disptab.h
  165. termcap.o : termcap.c $(config_h)
  166. terminfo.o : terminfo.c $(config_h)
  167. tparam.o : tparam.c $(config_h)
  168. undo.o : undo.c buffer.h commands.h $(config_h)
  169. UNEXEC_ALIAS=unexec.o
  170. $(UNEXEC_ALIAS) : unexec.c $(config_h)
  171. widget.o : widget.c xterm.h frame.h dispextern.h widgetprv.h $(config_h)
  172. window.o : window.c indent.h commands.h frame.h window.h buffer.h termchar.h    termhooks.h disptab.h keyboard.h $(config_h)
  173. xdisp.o : xdisp.c macros.h commands.h indent.h buffer.h dispextern.h    termchar.h frame.h window.h disptab.h termhooks.h $(config_h)
  174. xfaces.o : xfaces.c dispextern.h frame.h xterm.h buffer.h blockinput.h    window.h $(config_h)
  175. xfns.o : xfns.c buffer.h frame.h window.h keyboard.h xterm.h    blockinput.h $(config_h)
  176. xmenu.o : xmenu.c xterm.h window.h frame.h keyboard.h blockinput.h $(config_h)
  177. xterm.o : xterm.c xterm.h termhooks.h termopts.h termchar.h window.h   dispextern.h frame.h disptab.h blockinput.h systime.h syssignal.h   gnu.h sink.h sinkmask.h $(config_h)
  178. xselect.o : xselect.c dispextern.h frame.h xterm.h blockinput.h $(config_h)
  179. xrdb.o : xrdb.c $(config_h)
  180. hftctl.o : hftctl.c $(config_h)
  181. alloc.o : alloc.c frame.h window.h buffer.h  puresize.h syssignal.h
  182. alloc.o : blockinput.h $(config_h)
  183. bytecode.o : bytecode.c buffer.h $(config_h)
  184. data.o : data.c buffer.h puresize.h syssignal.h $(config_h)
  185. eval.o : eval.c commands.h keyboard.h blockinput.h $(config_h)
  186. floatfns.o : floatfns.c $(config_h)
  187. fns.o : fns.c commands.h $(config_h) frame.h buffer.h keyboard.h
  188. print.o : print.c process.h frame.h window.h buffer.h $(config_h)
  189. lread.o : lread.c commands.h keyboard.h buffer.h paths.h $(config_h)  termhooks.h
  190. textprop.o : textprop.c buffer.h intervals.h $(config_h)
  191. intervals.o : intervals.c buffer.h intervals.h puresize.h $(config_h)
  192. sunfns.o  : sunfns.c buffer.h $(config_h)
  193. amiga_dump.o: amiga_dump.c frame.h
  194. amiga_menu.o: amiga_menu.c frame.h
  195. amiga_screen.o: amiga_screen.c frame.h
  196. amiga_term.o: amiga_term.c frame.h
  197. amiga_tty.o: amiga_tty.c frame.h
  198. ${libsrc}emacstool: ${libsrc}emacstool.c
  199.     cd ${libsrc}; ${MAKE} ${MFLAGS} emacstool
  200. mostlyclean:
  201.     rm -f temacs prefix-args core \#* *.o libXMenu11.a liblw.a
  202.     rm -f ../etc/DOC
  203. clean: mostlyclean
  204.     rm -f emacs-* emacs
  205. distclean: clean
  206.     rm -f paths.h config.h Makefile Makefile.in ../etc/DOC-*
  207. realclean: distclean
  208.     rm -f TAGS
  209. versionclean:
  210.     -rm -f emacs emacs-* ../etc/DOC*
  211. extraclean: distclean
  212.     -rm -f *~ \#* m/?*~ s/?*~
  213. SOURCES = *.[ch] [sm]/?* COPYING ymakefile     config.h.in README COPYING ChangeLog vms.pp-trans
  214. unlock:
  215.     chmod u+w $(SOURCES)
  216. relock:
  217.     chmod -w $(SOURCES)
  218.     chmod +w paths.h
  219. ctagsfiles = [a-zA-Z]*.h [a-zA-Z]*.c
  220. lisptagsfiles = ../lisp/[a-zA-Z]*.el ../lisp/term/[a-zA-Z]*.el
  221. TAGS: $(ctagsfiles)
  222.     ../lib-src/etags --include=../lisp/TAGS $(ctagsfiles)
  223. ../lisp/TAGS: $(lisptagsfiles)
  224.     cd ../lisp; $(MAKE) TAGS
  225. tags: TAGS ../lisp/TAGS
  226. .PHONY: tags
  227.