blob: e96cd4839c2eb6d15a082dd349b4ddfe61b0db92 [file] [log] [blame]
Luca Stefanidad7e0a2016-11-23 23:44:59 +01001vim_src := $(call my-dir)
2
3# ========================================================
4# etc/vimrc
5# ========================================================
6
7LOCAL_PATH := $(vim_src)
8include $(CLEAR_VARS)
9
10LOCAL_MODULE := vimrc
11LOCAL_MODULE_TAGS := eng
12LOCAL_MODULE_CLASS := ETC
13
14LOCAL_SRC_FILES := vimrc.android
15
16include $(BUILD_PREBUILT)
17
18# ========================================================
19# vim
20# ========================================================
21
22LOCAL_PATH := $(vim_src)/src
23include $(CLEAR_VARS)
24
25LOCAL_SRC_FILES := \
26 auto/pathdef.c \
27 autocmd.c \
28 blob.c \
29 blowfish.c \
30 buffer.c \
31 change.c \
32 channel.c \
33 charset.c \
34 debugger.c \
35 dict.c \
36 diff.c \
37 digraph.c \
38 edit.c \
39 eval.c \
40 evalfunc.c \
41 ex_cmds.c \
42 ex_cmds2.c \
43 ex_docmd.c \
44 ex_eval.c \
45 ex_getln.c \
46 fileio.c \
47 findfile.c \
48 fold.c \
49 getchar.c \
50 hardcopy.c \
51 hashtab.c \
52 if_cscope.c \
53 if_xcmdsrv.c \
54 indent.c \
55 json.c \
56 list.c \
57 main.c \
58 mark.c \
59 mbyte.c \
60 memfile.c \
61 memline.c \
62 menu.c \
63 message.c \
64 misc1.c \
65 misc2.c \
66 move.c \
67 normal.c \
68 ops.c \
69 option.c \
70 os_unix.c \
71 popupmnu.c \
72 popupwin.c \
73 pty.c \
74 quickfix.c \
75 regexp.c \
76 screen.c \
77 search.c \
78 sha256.c \
79 spell.c \
80 syntax.c \
81 tag.c \
82 term.c \
83 textprop.c \
84 ui.c \
85 undo.c \
86 usercmd.c \
87 userfunc.c \
88 version.c \
89 window.c
90
91LOCAL_C_INCLUDES += \
92 external/libselinux/include \
93 external/libncurses/include \
94 $(LOCAL_PATH)/proto \
95 $(LOCAL_PATH)/auto
96
97LOCAL_SHARED_LIBRARIES += \
98 libselinux \
99 libncurses \
100 libm \
101 libdl
102
103LOCAL_CFLAGS += \
104 -DHAVE_CONFIG_H \
105 -DSYS_VIMRC_FILE=\"/system/etc/vimrc\"
106
107# vim variants: TINY SMALL CM NORMAL BIG HUGE
108#
109# NORMAL, BIG and HUGE are almost the same (1.1M)
110# TINY and SMALL are similar to busybox vi (460K)
111#
112# our profile is between SMALL and NORMAL (780K)
113# with syntax and utf8 (mbyte) support
114#
115# to reduce vim size, manually define wanted features
116LOCAL_CFLAGS += \
117 -DFEAT_SMALL=1 \
118 -DFEAT_MBYTE=1 \
119 -DFEAT_SYN_HL=1 \
120 -DFEAT_CINDENT=1 \
121 -DFEAT_COMMENTS=1 \
122 -DFEAT_EVAL=1 \
123 -DFEAT_AUTOCMD=1 \
124 -DFEAT_USR_CMDS=1 \
125 -DFEAT_EX_EXTRA=1 \
126 -DFEAT_CMDL_COMPL=1 \
127 -DFEAT_LISTCMDS=1 \
128 -DFEAT_CMDL_INFO=1 \
129 -DFEAT_SEARCH_EXTRA=1
130
131LOCAL_CFLAGS += -Wno-unused-variable -Wno-unused-parameter
132
133LOCAL_MODULE := vim
134LOCAL_MODULE_TAGS := eng
135LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
136LOCAL_REQUIRED_MODULES := vimrc
137include $(BUILD_EXECUTABLE)
138
139# ========================================================
140# vim runtime files
141# ========================================================
142ifeq (vim,$(filter vim, $(ALL_MODULES)))
143
144vim_runtime_path := $(vim_src)/runtime
145
146vim_runtime_files := \
147 scripts.vim \
148 indent.vim \
149 indoff.vim \
150 filetype.vim \
151 ftoff.vim
152
153vim_doc_files := \
154 help.txt intro.txt tags \
155 motion.txt editing.txt scroll.txt \
156 options.txt term.txt
157
158vim_colors_files := \
159 default.vim \
160 desert.vim
161
162vim_syntax_files := \
163 logcat.vim \
164 awk.vim \
165 config.vim \
166 conf.vim \
167 cpp.vim \
168 c.vim \
169 css.vim \
170 diff.vim \
171 doxygen.vim \
172 html.vim vb.vim \
173 xml.vim dtd.vim \
174 context.vim \
175 gitcommit.vim \
176 help.vim \
177 javascript.vim \
178 java.vim \
179 lua.vim \
180 manual.vim \
181 markdown.vim \
182 pod.vim \
183 sh.vim \
184 syncolor.vim \
185 synload.vim \
186 syntax.vim \
187 vim.vim
188
189vim_plugin_files := \
190 matchparen.vim \
191
192vim_autoload_files := \
193 dist/ft.vim \
194 spacehi.vim
195
196VIM_SHARED := $(TARGET_OUT)/usr/share/vim
197
198vim_runtime_files := \
199 $(vim_runtime_files) \
200 $(addprefix doc/, $(vim_doc_files)) \
201 $(addprefix colors/, $(vim_colors_files)) \
202 $(addprefix syntax/, $(vim_syntax_files)) \
203 $(addprefix plugin/, $(vim_plugin_files)) \
204 $(addprefix autoload/, $(vim_autoload_files)) \
205
206$(vim_runtime_files): $(LOCAL_BUILT_MODULE)
207 @echo "Install: $(VIM_SHARED)/$@"
208 @mkdir -p $(dir $(VIM_SHARED)/$@)
209 $(hide) cp $(vim_runtime_path)/$@ $(VIM_SHARED)/$@
210
211ALL_DEFAULT_INSTALLED_MODULES += $(vim_runtime_files)
212
213ALL_MODULES.$(LOCAL_MODULE).INSTALLED := \
214 $(ALL_MODULES.$(LOCAL_MODULE).INSTALLED) \
215 $(addprefix $(VIM_SHARED)/, $(vim_runtime_files))
216
217endif