blob: 4d21dc620077c9f0e8c61cfe362ae33e685b60a6 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001#
2# Makefile for VIM on OS/2 using EMX vim:ts=8:sw=8:tw=78
3#
4# Created by: Paul Slootman
5#
6
7### This Makefile has been succesfully tested on these systems.
8### Check the (*) column for remarks, listed below.
9### Later code changes may cause small problems, otherwise Vim is supposed to
10### compile and run without problems.
11### Just to show that this is just like the Unix version!
12
13#system: configurations: version (*) tested by:
14#------------- ------------------------ ------- - ----------
15#OS/2 Warp HPFS gcc-2.7.2+emx-0.9b -GUI 4.5 Paul Slootman
16#OS/2 FAT gcc-2.6.3+emx -GUI 4.5 Karsten Sievert
17
18#>>>>> choose options:
19
20### See feature.h for a list of optionals.
21### Any other defines can be included here.
22
23DEFINES = -DUSE_SYSTEM=1
24
25#>>>>> name of the compiler and linker, name of lib directory
26CC = gcc
27
28#>>>>> end of choices
29
30### Name of target(s)
31TARGET = vim.exe
32
33### Names of the tools that are also made
34TOOLS = xxd/xxd.exe tee/tee.exe
35
36###########################################################################
37
38INCL = vim.h globals.h option.h keymap.h macros.h ascii.h term.h os_unix.h structs.h os_os2_cfg.h
39CFLAGS = -O2 -fno-strength-reduce -DOS2 -Wall -Iproto $(DEFINES)
40
41OBJ = \
42 buffer.o \
43 charset.o \
44 diff.o \
45 digraph.o \
46 edit.o \
47 eval.o \
48 ex_cmds.o \
49 ex_cmds2.o \
50 ex_docmd.o \
51 ex_eval.o \
52 ex_getln.o \
53 fileio.o \
54 fold.o \
55 getchar.o \
56 main.o \
57 mark.o \
58 memfile.o \
59 memline.o \
60 menu.o \
61 message.o \
62 misc1.o \
63 misc2.o \
64 move.o \
65 mbyte.o \
66 normal.o \
67 ops.o \
68 option.o \
69 quickfix.o \
70 regexp.o \
71 screen.o \
72 search.o \
73 syntax.o \
74 tag.o \
75 term.o \
76 ui.o \
77 undo.o \
78 window.o \
79 os_unix.o
80
81LIBS = -ltermcap
82
83# Default target is making the executable
84all: $(TARGET) $(TOOLS)
85
86# Link the target for normal use
87LFLAGS = -Zcrtdll -s -o $(TARGET) $(LIBS)
88
89$(TARGET): $(OBJ) version.c version.h
90 $(CC) $(CFLAGS) version.c $(OBJ) $(LFLAGS)
91
92xxd/xxd.exe: xxd/xxd.c
93 cd xxd & $(MAKE) -f Make_os2.mak
94
95tee/tee.exe: tee/tee.c
96 cd tee & $(MAKE) -f Makefile
97
98test:
99 cd testdir & $(MAKE) -f Make_os2.mak
100
101clean:
102 -del *.o
103 -del *.exe
104 -del *.~ *~ *.bak
105 cd xxd & $(MAKE) -f Make_os2.mak clean
106 cd tee & $(MAKE) -f Makefile clean
107
108###########################################################################
109
110os_unix.o: os_unix.c $(INCL)
111buffer.o: buffer.c $(INCL)
112charset.o: charset.c $(INCL)
113diff.o: diff.c $(INCL)
114digraph.o: digraph.c $(INCL)
115edit.o: edit.c $(INCL)
116eval.o: eval.c $(INCL)
117ex_cmds.o: ex_cmds.c $(INCL)
118ex_cmds2.o: ex_cmds2.c $(INCL)
119ex_docmd.o: ex_docmd.c $(INCL) ex_cmds.h
120ex_eval.o: ex_eval.c $(INCL) ex_cmds.h
121ex_getln.o: ex_getln.c $(INCL)
122fileio.o: fileio.c $(INCL)
123fold.o: fold.c $(INCL)
124getchar.o: getchar.c $(INCL)
125main.o: main.c $(INCL)
126mark.o: mark.c $(INCL)
127memfile.o: memfile.c $(INCL)
128memline.o: memline.c $(INCL)
129menu.o: menu.c $(INCL)
130message.o: message.c $(INCL)
131misc1.o: misc1.c $(INCL)
132misc2.o: misc2.c $(INCL)
133move.o: move.c $(INCL)
134mbyte.o: mbyte.c $(INCL)
135normal.o: normal.c $(INCL)
136ops.o: ops.c $(INCL)
137option.o: option.c $(INCL)
138quickfix.o: quickfix.c $(INCL)
139regexp.o: regexp.c $(INCL)
140screen.o: screen.c $(INCL)
141search.o: search.c $(INCL)
142syntax.o: syntax.c $(INCL)
143tag.o: tag.c $(INCL)
144term.o: term.c $(INCL)
145ui.o: ui.c $(INCL)
146undo.o: undo.c $(INCL)
147window.o: window.c $(INCL)