1# 2# Makefile for VIM on MSDOS, using DJGPP 2.0 3# 4 5#>>>>> choose options: 6 7### See feature.h for a list of optionals. 8### Any other defines can be included here. 9 10DEFINES = 11 12#>>>>> name of the compiler and linker, name of lib directory 13CC = gcc 14 15#>>>>> end of choices 16########################################################################### 17 18INCL = vim.h globals.h option.h keymap.h macros.h ascii.h term.h os_msdos.h structs.h 19CFLAGS = -O2 -DMSDOS -Iproto $(DEFINES) -Wall -Dinterrupt= -Dfar= -DMAXMEM=512 -D_NAIVE_DOS_REGS 20 21OBJ = \ 22 obj/blowfish.o \ 23 obj/buffer.o \ 24 obj/charset.o \ 25 obj/diff.o \ 26 obj/digraph.o \ 27 obj/edit.o \ 28 obj/eval.o \ 29 obj/ex_cmds.o \ 30 obj/ex_cmds2.o \ 31 obj/ex_docmd.o \ 32 obj/ex_eval.o \ 33 obj/ex_getln.o \ 34 obj/fileio.o \ 35 obj/fold.o \ 36 obj/getchar.o \ 37 obj/hardcopy.o \ 38 obj/hashtab.o \ 39 obj/main.o \ 40 obj/mark.o \ 41 obj/memfile.o \ 42 obj/memline.o \ 43 obj/menu.o \ 44 obj/message.o \ 45 obj/misc1.o \ 46 obj/misc2.o \ 47 obj/move.o \ 48 obj/mbyte.o \ 49 obj/normal.o \ 50 obj/ops.o \ 51 obj/option.o \ 52 obj/os_msdos.o \ 53 obj/popupmnu.o \ 54 obj/quickfix.o \ 55 obj/regexp.o \ 56 obj/screen.o \ 57 obj/search.o \ 58 obj/sha256.o \ 59 obj/spell.o \ 60 obj/syntax.o \ 61 obj/tag.o \ 62 obj/term.o \ 63 obj/ui.o \ 64 obj/undo.o \ 65 obj/window.o \ 66 $(TERMLIB) 67 68all: vim.exe install.exe uninstal.exe xxd/xxd.exe 69 70# version.c is compiled each time, so that it sets the build time. 71vim.exe: obj $(OBJ) version.c version.h 72 $(CC) $(CFLAGS) -s -o vim.exe version.c $(OBJ) -lpc 73 74install.exe: dosinst.c 75 $(CC) $(CFLAGS) -s -o install.exe dosinst.c -lpc 76 77uninstal.exe: uninstal.c 78 $(CC) $(CFLAGS) -s -o uninstal.exe uninstal.c -lpc 79 80# This requires GNU make. 81xxd/xxd.exe: xxd/xxd.c 82 $(MAKE) --directory=xxd -f Make_djg.mak 83 84obj: 85 mkdir obj 86 87tags: 88 command /c ctags *.c $(INCL) ex_cmds.h 89 90clean: 91 -del obj\*.o 92 -rmdir obj 93 -del vim.exe 94 -del install.exe 95 -del xxd\xxd.exe 96 -del testdir\*.out 97 98# This requires GNU make. 99test: 100 $(MAKE) --directory=testdir -f Make_dos.mak 101 102########################################################################### 103 104obj/%.o: %.c obj $(INCL) 105 $(CC) -c $(CFLAGS) -o $@ $< 106 107# Extra dependency (there are actually many more...) 108obj/ex_docmd.o: ex_cmds.h 109