summaryrefslogtreecommitdiff
path: root/src/Make_manx.mak
diff options
context:
space:
mode:
Diffstat (limited to 'src/Make_manx.mak')
-rw-r--r--src/Make_manx.mak322
1 files changed, 322 insertions, 0 deletions
diff --git a/src/Make_manx.mak b/src/Make_manx.mak
new file mode 100644
index 000000000..b7c06e986
--- /dev/null
+++ b/src/Make_manx.mak
@@ -0,0 +1,322 @@
+#
+# Makefile for VIM on the Amiga, using Aztec/Manx C 5.0 or later
+#
+# Note: Not all dependencies are included. This was done to avoid having
+# to compile everything when a global variable or function is added.
+# Careful when changing a global struct or variable!
+#
+
+#>>>>> choose options:
+
+### See feature.h for a list of optionals.
+### Any other defines can be included here.
+DEFINES =
+
+#>>>>> if HAVE_TGETENT is defined obj/termlib.o has to be used
+#TERMLIB = obj/termlib.o
+TERMLIB =
+
+#>>>>> choose between debugging (-bs) or optimizing (-so)
+OPTIONS = -so
+#OPTIONS = -bs
+
+#>>>>> end of choices
+###########################################################################
+
+CFLAGS = $(OPTIONS) -wapruq -ps -qf -Iproto $(DEFINES) -DAMIGA
+
+LIBS = -lc16
+SYMS = vim.syms
+CC = cc
+LN = ln
+LNFLAGS = +q
+SHELL = csh
+REN = $(SHELL) -c mv -f
+DEL = $(SHELL) -c rm -f
+
+SRC = buffer.c \
+ charset.c \
+ diff.c \
+ digraph.c \
+ edit.c \
+ eval.c \
+ ex_cmds.c \
+ ex_cmds2.c \
+ ex_docmd.c \
+ ex_eval.c \
+ ex_getln.c \
+ fileio.c \
+ fold.c \
+ getchar.c \
+ main.c \
+ mark.c \
+ memfile.c \
+ memline.c \
+ menu.c \
+ message.c \
+ misc1.c \
+ misc2.c \
+ move.c \
+ mbyte.c \
+ normal.c \
+ ops.c \
+ option.c \
+ os_amiga.c \
+ quickfix.c \
+ regexp.c \
+ screen.c \
+ search.c \
+ syntax.c \
+ tag.c \
+ term.c \
+ ui.c \
+ undo.c \
+ window.c \
+ version.c
+
+INCL = vim.h feature.h keymap.h macros.h ascii.h term.h structs.h os_amiga.h
+
+OBJ = obj/buffer.o \
+ obj/charset.o \
+ obj/diff.o \
+ obj/digraph.o \
+ obj/edit.o \
+ obj/eval.o \
+ obj/ex_cmds.o \
+ obj/ex_cmds2.o \
+ obj/ex_docmd.o \
+ obj/ex_eval.o \
+ obj/ex_getln.o \
+ obj/fileio.o \
+ obj/fold.o \
+ obj/getchar.o \
+ obj/main.o \
+ obj/mark.o \
+ obj/memfile.o \
+ obj/memline.o \
+ obj/menu.o \
+ obj/message.o \
+ obj/misc1.o \
+ obj/misc2.o \
+ obj/move.o \
+ obj/mbyte.o \
+ obj/normal.o \
+ obj/ops.o \
+ obj/option.o \
+ obj/os_amiga.o \
+ obj/quickfix.o \
+ obj/regexp.o \
+ obj/screen.o \
+ obj/search.o \
+ obj/syntax.o \
+ obj/tag.o \
+ obj/term.o \
+ obj/ui.o \
+ obj/undo.o \
+ obj/window.o \
+ $(TERMLIB)
+
+PRO = proto/buffer.pro \
+ proto/charset.pro \
+ proto/diff.pro \
+ proto/digraph.pro \
+ proto/edit.pro \
+ proto/eval.pro \
+ proto/ex_cmds.pro \
+ proto/ex_cmds2.pro \
+ proto/ex_docmd.pro \
+ proto/ex_eval.pro \
+ proto/ex_getln.pro \
+ proto/fileio.pro \
+ proto/fold.pro \
+ proto/getchar.pro \
+ proto/main.pro \
+ proto/mark.pro \
+ proto/memfile.pro \
+ proto/memline.pro \
+ proto/menu.pro \
+ proto/message.pro \
+ proto/misc1.pro \
+ proto/misc2.pro \
+ proto/move.pro \
+ proto/mbyte.pro \
+ proto/normal.pro \
+ proto/ops.pro \
+ proto/option.pro \
+ proto/os_amiga.pro \
+ proto/quickfix.pro \
+ proto/regexp.pro \
+ proto/screen.pro \
+ proto/search.pro \
+ proto/syntax.pro \
+ proto/tag.pro \
+ proto/term.pro \
+ proto/termlib.pro \
+ proto/ui.pro \
+ proto/undo.pro \
+ proto/window.pro
+
+all: Vim xxd/Xxd
+
+Vim: obj $(OBJ) version.c version.h
+ $(CC) $(CFLAGS) version.c -o obj/version.o
+ $(LN) $(LNFLAGS) -m -o Vim $(OBJ) obj/version.o $(LIBS)
+
+debug: obj $(OBJ) version.c version.h
+ $(CC) $(CFLAGS) version.c -o obj/version.o
+ $(LN) $(LNFLAGS) -m -g -o Vim $(OBJ) obj/version.o $(LIBS)
+
+xxd/Xxd: xxd/xxd.c
+ $(SHELL) -c cd xxd; make -f Make_amiga.mak; cd ..
+
+# Making prototypes with Manx has been removed, because it caused too many
+# problems.
+#proto: $(SYMS) $(PRO)
+
+obj:
+ makedir obj
+
+tags: $(SRC) $(INCL)
+ $(SHELL) -c ctags $(SRC) *.h
+
+# can't use delete here, too many file names
+clean:
+ $(DEL) $(OBJ) obj/version.o \
+ obj/termlib.o Vim $(SYMS) xxd/Xxd
+
+test:
+ $(SHELL) -c cd testdir; make -f Make_amiga.mak; cd ..
+
+$(SYMS): $(INCL) $(PRO)
+ $(CC) $(CFLAGS) -ho$(SYMS) vim.h
+
+###########################################################################
+
+# Unfortunately, Manx's make doesn't understand a .c.o rule, so each
+# compilation command has to be given explicitly.
+
+CCSYM = $(CC) $(CFLAGS) -hi$(SYMS) -o
+CCNOSYM = $(CC) $(CFLAGS) -o
+
+$(OBJ): $(SYMS)
+
+obj/buffer.o: buffer.c
+ $(CCSYM) $@ buffer.c
+
+obj/charset.o: charset.c
+ $(CCSYM) $@ charset.c
+
+obj/diff.o: diff.c
+ $(CCSYM) $@ diff.c
+
+obj/digraph.o: digraph.c
+ $(CCSYM) $@ digraph.c
+
+obj/edit.o: edit.c
+ $(CCSYM) $@ edit.c
+
+obj/eval.o: eval.c
+ $(CCSYM) $@ eval.c
+
+obj/ex_cmds.o: ex_cmds.c
+ $(CCSYM) $@ ex_cmds.c
+
+obj/ex_cmds2.o: ex_cmds2.c
+ $(CCSYM) $@ ex_cmds2.c
+
+# Don't use $(SYMS) here, because ex_docmd.c defines DO_DECLARE_EXCMD
+obj/ex_docmd.o: ex_docmd.c ex_cmds.h
+ $(CCNOSYM) $@ ex_docmd.c
+
+obj/ex_eval.o: ex_eval.c ex_cmds.h
+ $(CCSYM) $@ ex_eval.c
+
+obj/ex_getln.o: ex_getln.c
+ $(CCSYM) $@ ex_getln.c
+
+obj/fileio.o: fileio.c
+ $(CCSYM) $@ fileio.c
+
+obj/fold.o: fold.c
+ $(CCSYM) $@ fold.c
+
+obj/getchar.o: getchar.c
+ $(CCSYM) $@ getchar.c
+
+# Don't use $(SYMS) here, because main.c defines EXTERN
+obj/main.o: main.c option.h globals.h
+ $(CCNOSYM) $@ main.c
+
+obj/mark.o: mark.c
+ $(CCSYM) $@ mark.c
+
+obj/memfile.o: memfile.c
+ $(CCSYM) $@ memfile.c
+
+obj/memline.o: memline.c
+ $(CCSYM) $@ memline.c
+
+obj/menu.o: menu.c
+ $(CCSYM) $@ menu.c
+
+# Don't use $(SYMS) here, because message.c defines MESSAGE_FILE
+obj/message.o: message.c
+ $(CCNOSYM) $@ message.c
+
+obj/misc1.o: misc1.c
+ $(CCSYM) $@ misc1.c
+
+obj/misc2.o: misc2.c
+ $(CCSYM) $@ misc2.c
+
+obj/move.o: move.c
+ $(CCSYM) $@ move.c
+
+obj/mbyte.o: mbyte.c
+ $(CCSYM) $@ mbyte.c
+
+obj/normal.o: normal.c
+ $(CCSYM) $@ normal.c
+
+obj/ops.o: ops.c
+ $(CCSYM) $@ ops.c
+
+# Don't use $(SYMS) here, because option.h defines variables here
+obj/option.o: option.c
+ $(CCNOSYM) $@ option.c
+
+obj/os_amiga.o: os_amiga.c
+ $(CCSYM) $@ os_amiga.c
+
+obj/quickfix.o: quickfix.c
+ $(CCSYM) $@ quickfix.c
+
+obj/regexp.o: regexp.c
+ $(CCSYM) $@ regexp.c
+
+obj/screen.o: screen.c
+ $(CCSYM) $@ screen.c
+
+obj/search.o: search.c
+ $(CCSYM) $@ search.c
+
+obj/syntax.o: syntax.c
+ $(CCSYM) $@ syntax.c
+
+obj/tag.o: tag.c
+ $(CCSYM) $@ tag.c
+
+obj/term.o: term.c term.h
+ $(CCSYM) $@ term.c
+
+obj/termlib.o: termlib.c
+ $(CCSYM) $@ termlib.c
+
+obj/ui.o: ui.c
+ $(CCSYM) $@ ui.c
+
+obj/undo.o: undo.c
+ $(CCSYM) $@ undo.c
+
+obj/window.o: window.c
+ $(CCSYM) $@ window.c