1 DESCRIPTION = "Vi IMproved"
2 HOMEPAGE = "http://www.vim.org/"
3 SECTION = "Base/Utilities"
13 PROVIDES += "vim-data"
14 RPROVIDES_vim-data += "vim-data"
17 PROVIDES += "vim-base"
18 RPROVIDES_vim-base += "vim-base"
20 #PROVIDES by vim-enhanced
21 PROVIDES += "vim-enhanced"
22 RPROVIDES_vim-enhanced += "vim-enhanced"
23 # the PROVIDES rules is ignore "vi "
25 RPROVIDES_vim-enhanced += "vi"
26 # the PROVIDES rules is ignore "vim_client "
27 PROVIDES += "vim_client"
28 RPROVIDES_vim-enhanced += "vim_client"
31 PROVIDES += "vim-docs "
32 RPROVIDES_vim-docs += "vim-docs "
36 RPROVIDES_vim += "vim"
37 # the PROVIDES rules is ignore "vi "
40 # the PROVIDES rules is ignore "vim_client "
41 PROVIDES += "vim_client"
42 RPROVIDES_vim += "vim_client"
45 #RDEPENDS of vim-data (${PN}-data)
46 RDEPENDS_${PN}-data += "vim-base"
48 #RDEPENDS of vim-base (${PN}-base)
49 RDEPENDS_${PN}-base += "vim-base"
50 RDEPENDS_${PN}-base += "update-alternatives"
52 #RDEPENDS of vim (${PN})
53 RDEPENDS_${PN} += "vim-base"
54 RDEPENDS_${PN} += "update-alternatives"
56 #RDEPENDS of vim-enhanced (${PN}-enhanced)
57 RDEPENDS_${PN}-enhanced += "vim-data"
58 RDEPENDS_${PN}-enhanced += "vim-base"
59 RDEPENDS_${PN}-enhanced += "update-alternatives"
60 RDEPENDS_${PN}-enhanced += "perl"
66 DEPENDS += "fdupes-native"
69 #Replace "DEPENDS" on gettext by "inherit gettext"
73 DEPENDS += "autoconf-native"
79 unp ${S}/packaging/vim-7.4-patches.tar.bz2
81 chmod -Rf a+rX,u+w,g-w,o-w ${S}
82 #setup -q -n vim74 -b 98
83 cp ${S}/packaging/vim.manifest .
84 for p in ../vim-7.4-patches/7.4*; do
86 test ${p#*/7.4.} -le 155 || exit 1
91 cp ${S}/packaging/tizen.vimrc .
93 # newer perl? ugly hack to fix build anyway.
94 sed -i -e 's/^XS(XS_/XS_INTERNAL(XS_/' src/if_perl.xs
106 CFLAGS="-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables" ; export CFLAGS ;
107 CXXFLAGS="${CXXFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CXXFLAGS ;
108 FFLAGS="${FFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -I%_fmoddir}" ; export FFLAGS ;
109 LD_AS_NEEDED=1; export LD_AS_NEEDED ;
111 export CFLAGS="-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -Wall -pipe -fno-strict-aliasing"
112 export CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/-D_FORTIFY_SOURCE=1}
114 export COMMON_OPTIONS="\
117 --with-vim-name=vim \
119 --with-view-name=view \
123 --with-features=huge \
124 --with-compiledby='http://www.tizen.org/' \
126 --with-global-runtime=/usr/share/vim/site"
127 export SCRIPT_OPTIONS="\
128 --enable-perlinterp \
129 --enable-pythoninterp \
130 --with-python-config-dir=/usr/lib/python2.7/config"
136 # build small default binary
138 CFLAGS="${CFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CFLAGS ;
139 CXXFLAGS="${CXXFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CXXFLAGS ;
140 FFLAGS="${FFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -I%_fmoddir}" ; export FFLAGS ;
141 autotools_do_configure --build=${TARGET_SYS} --host=${HOST_SYS} \
142 --target=x86_64-tizen-linux \
147 --sbindir=/usr/sbin \
149 --datadir=/usr/share \
150 --includedir=/usr/include \
152 --libexecdir=/usr/libexec \
153 --localstatedir=/var \
154 --sharedstatedir=/usr/com \
155 --mandir=/usr/share/man \
156 --infodir=/usr/share/info \
157 ${COMMON_OPTIONS} --disable-gui --without-x --disable-gpm \
158 --disable-perlinterp --disable-pythoninterp \
159 --disable-rubyinterp --disable-tclinterp
160 sed -i -e 's|define HAVE_DATE_TIME 1|undef HAVE_DATE_TIME|' src/auto/config.h
161 make VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/current MAKE="make -e" -j16
162 cp src/vim vim-normal
165 # build enhanced binary
167 CFLAGS="${CFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CFLAGS ;
168 CXXFLAGS="${CXXFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CXXFLAGS ;
169 FFLAGS="${FFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -I%_fmoddir}" ; export FFLAGS ;
170 autotools_do_configure --build=${TARGET_SYS} --host=${HOST_SYS} \
171 --target=x86_64-tizen-linux \
176 --sbindir=/usr/sbin \
178 --datadir=/usr/share \
179 --includedir=/usr/include \
181 --libexecdir=/usr/libexec \
182 --localstatedir=/var \
183 --sharedstatedir=/usr/com \
184 --mandir=/usr/share/man \
185 --infodir=/usr/share/info ${COMMON_OPTIONS} ${SCRIPT_OPTIONS} --disable-gui
186 sed -i -e 's|define HAVE_DATE_TIME 1|undef HAVE_DATE_TIME|' src/auto/config.h
187 make VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/current MAKE="make -e" -j16
188 cp src/vim vim-enhanced
198 echo export RPM_BUILD_ROOT=${D}
205 # create icon directory to have the icon from the tarball installed
206 install -d -m 0755 ${D}/usr/share/icons/hicolor/48x48/apps
209 make install DESTDIR=${D} BINDIR=/usr/bin VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/site
212 # install the other binaries
213 install -D -m 0755 vim-normal ${D}//usr/bin/vim-normal
214 install -D -m 0755 vim-enhanced ${D}/usr/bin/vim-enhanced
217 # we need a dummy target for /etc/alternatives/vim
218 mkdir -p ${D}/etc/alternatives
219 touch ${D}/etc/alternatives/vim
220 ln -s -f /etc/alternatives/vim ${D}//usr/bin/vim
222 ln -s -f vim ${D}/usr/bin/vi
223 ln -s -f vim ${D}/usr/bin/edit
224 ln -s -f vim ${D}//usr/bin/ex
227 mkdir -p ${D}/usr/share/man/man1
228 ln -s -f vim.1.gz ${D}/usr/share/man/man1/vi.1.gz
229 ln -s -f vim.1.gz ${D}/usr/share/man/man1/ex.1.gz
232 # make the vim settings more generic
233 ln -s -f vim74 ${D}/usr/share/vim/current
236 install -D -m 0644 ${S}/packaging/tizen.vimrc ${D}/etc/vimrc
238 # create site wide runtime directory
239 mkdir -p -m 0755 ${D}/usr/share/vim/site/after
240 mkdir -m 0755 ${D}/usr/share/vim/site/autoload
241 mkdir -m 0755 ${D}/usr/share/vim/site/colors
242 mkdir -m 0755 ${D}/usr/share/vim/site/doc
243 mkdir -m 0755 ${D}/usr/share/vim/site/plugin
244 mkdir -m 0755 ${D}/usr/share/vim/site/syntax
245 mkdir -m 0755 ${D}/usr/share/vim/site/ftdetect
246 mkdir -m 0755 ${D}/usr/share/vim/site/after/syntax
247 mkdir -m 0755 ${D}/usr/share/vim/current/skeletons
248 mkdir -m 0755 ${D}/etc/skel
253 install -d -m 0755 ${D}/usr/share/doc/packages/{,g}vim/
254 cp runtime/doc/uganda.txt LICENSE
257 README.txt README_src.txt README_unix.txt \
258 ${D}/usr/share/doc/packages/vim/
260 # remove unecessary duplicate manpages
261 rm -rf ${D}/usr/share/man/fr.ISO8859-1/
262 rm -rf ${D}/usr/share/man/fr.UTF-8/
263 rm -rf ${D}/usr/share/man/pl.ISO8859-2/
264 rm -rf ${D}/usr/share/man/pl.UTF-8/
265 rm -rf ${D}/usr/share/man/ru.KOI8-R/
266 rm -rf ${D}/usr/share/man/it.ISO8859-1/
267 rm -rf ${D}/usr/share/man/it.UTF-8/
268 rm -rf ${D}/usr/share/man/ru.UTF-8
269 # and move russian manpages to a place where they can be found
270 rm -rf ${D}/usr/share/man/{fr,it,pl,ru,ja}
273 # remove some c source files
274 rm -f ${D}/usr/share/vim/vim74/tools/*.c
275 rm -f ${D}/usr/share/vim/vim74/macros/maze/*.c
277 # Create ghost files (see vim.conf)
278 mkdir -p ${D}/var/run/vi.recover
279 rm -rf ${D}/usr/share/icons/hicolor/48x48/apps
285 fdupes -q -n -r ${D}/usr/share/vim/vim74/lang |
287 if test -z "$_target" ; then
290 if test -z "$_file" ; then
294 if test "$_symlinks" = 1; then
295 ln -sf "${_target#${D}}" "$_file";
297 ln -f "$_target" "$_file";
305 fdupes -q -n -r ${D}/usr/share/vim/vim74/tutor |
307 if test -z "$_target" ; then
310 if test -z "$_file" ; then
314 if test "$_symlinks" = 1; then
315 ln -sf "${_target#${D}}" "$_file";
317 ln -f "$_target" "$_file";
325 fdupes -q -n -r ${D}/usr/share/vim/vim74/ftplugin |
327 if test -z "$_target" ; then
330 if test -z "$_file" ; then
334 if test "$_symlinks" = 1; then
335 ln -sf "${_target#${D}}" "$_file";
337 ln -f "$_target" "$_file";
346 PACKAGES += "vim-data"
347 PACKAGES += "vim-base"
349 PACKAGES += "vim-docs"
350 PACKAGES += "vim-enhanced"
353 vim-data_files += "vim.manifest"
354 vim-data_files += "/usr/share/vim/vim74/autoload/*"
355 vim-data_files += "/usr/share/vim/vim74/colors/*"
356 vim-data_files += "/usr/share/vim/vim74/compiler/*"
357 vim-data_files += "/usr/share/vim/vim74/doc/*"
358 vim-data_files += "/usr/share/vim/vim74/ftplugin/*"
359 vim-data_files += "/usr/share/vim/vim74/indent/*"
360 vim-data_files += "/usr/share/vim/vim74/keymap/*"
361 vim-data_files += "/usr/share/vim/vim74/lang/*"
362 vim-data_files += "/usr/share/vim/vim74/macros/*"
363 vim-data_files += "/usr/share/vim/vim74/plugin/*"
364 vim-data_files += "/usr/share/vim/vim74/print/*"
365 vim-data_files += "/usr/share/vim/vim74/spell/*"
366 vim-data_files += "/usr/share/vim/vim74/syntax/*"
367 vim-data_files += "/usr/share/vim/vim74/tools/ccfilter.1"
368 vim-data_files += "/usr/share/vim/vim74/tools/ccfilter_README.txt"
369 vim-data_files += "/usr/share/vim/vim74/tools/efm_filter.pl"
370 vim-data_files += "/usr/share/vim/vim74/tools/efm_filter.txt"
371 vim-data_files += "/usr/share/vim/vim74/tools/efm_perl.pl"
372 vim-data_files += "/usr/share/vim/vim74/tools/mve.awk"
373 vim-data_files += "/usr/share/vim/vim74/tools/mve.txt"
374 vim-data_files += "/usr/share/vim/vim74/tools/pltags.pl"
375 vim-data_files += "/usr/share/vim/vim74/tools/README.txt"
376 vim-data_files += "/usr/share/vim/vim74/tools/ref"
377 vim-data_files += "/usr/share/vim/vim74/tools/shtags.1"
378 vim-data_files += "/usr/share/vim/vim74/tools/shtags.pl"
379 vim-data_files += "/usr/share/vim/vim74/tools/unicode.vim"
380 vim-data_files += "/usr/share/vim/vim74/tools/vimm"
381 vim-data_files += "/usr/share/vim/vim74/tools/vimspell.sh"
382 vim-data_files += "/usr/share/vim/vim74/tools/vimspell.txt"
383 vim-data_files += "/usr/share/vim/vim74/tools/vim_vs_net.cmd"
384 vim-data_files += "/usr/share/vim/vim74/tutor/*"
385 vim-data_files += "/usr/share/vim/vim74/delmenu.vim"
386 vim-data_files += "/usr/share/vim/vim74/menu.vim"
387 vim-data_files += "/usr/share/vim/vim74/mswin.vim"
388 vim-data_files += "/usr/share/vim/vim74/synmenu.vim"
389 vim-data_files += "/usr/share/vim/vim74/gvimrc_example.vim"
390 vim-data_files += "/usr/share/vim/vim74/vimrc_example.vim"
393 vim-base_files += "vim.manifest"
394 vim-base_files += "/etc/vimrc"
395 vim-base_files += "/usr/bin/edit"
396 vim-base_files += "/usr/bin/ex"
397 vim-base_files += "/usr/bin/rview"
398 vim-base_files += "/usr/bin/rvim"
399 vim-base_files += "/usr/bin/vi"
400 vim-base_files += "/usr/bin/vim"
401 vim-base_files += "/usr/bin/view"
402 vim-base_files += "/usr/bin/vimdiff"
403 vim-base_files += "/usr/bin/vimtutor"
404 vim-base_files += "/usr/bin/xxd"
405 vim-base_files += "/usr/share/doc/packages/vim"
406 vim-base_files += "/usr/share/vim/current"
407 vim-base_files += "/usr/share/vim/"
408 vim-base_files += "/usr/share/vim/vim74/"
409 vim-base_files += "/usr/share/vim/vim74/autoload/"
410 vim-base_files += "/usr/share/vim/vim74/colors/"
411 vim-base_files += "/usr/share/vim/vim74/compiler/"
412 vim-base_files += "/usr/share/vim/vim74/doc/"
413 vim-base_files += "/usr/share/vim/vim74/ftplugin/"
414 vim-base_files += "/usr/share/vim/vim74/indent/"
415 vim-base_files += "/usr/share/vim/vim74/keymap/"
416 vim-base_files += "/usr/share/vim/vim74/lang/"
417 vim-base_files += "/usr/share/vim/vim74/macros/"
418 vim-base_files += "/usr/share/vim/vim74/plugin/"
419 vim-base_files += "/usr/share/vim/vim74/print/"
420 vim-base_files += "/usr/share/vim/vim74/spell/"
421 vim-base_files += "/usr/share/vim/vim74/syntax/"
422 vim-base_files += "/usr/share/vim/vim74/tools/"
423 vim-base_files += "/usr/share/vim/vim74/tutor/"
424 vim-base_files += "/usr/share/vim/vim74/skeletons/"
425 vim-base_files += "/usr/share/vim/site"
426 vim-base_files += "/usr/share/vim/site/autoload/"
427 vim-base_files += "/usr/share/vim/site/colors/"
428 vim-base_files += "/usr/share/vim/site/doc/"
429 vim-base_files += "/usr/share/vim/site/plugin/"
430 vim-base_files += "/usr/share/vim/site/syntax/"
431 vim-base_files += "/usr/share/vim/site/ftdetect/"
432 vim-base_files += "/usr/share/vim/site/after/"
433 vim-base_files += "/usr/share/vim/site/after/syntax/"
434 vim-base_files += "/usr/share/vim/vim74/bugreport.vim"
435 vim-base_files += "/usr/share/vim/vim74/evim.vim"
436 vim-base_files += "/usr/share/vim/vim74/filetype.vim"
437 vim-base_files += "/usr/share/vim/vim74/ftoff.vim"
438 vim-base_files += "/usr/share/vim/vim74/ftplugin.vim"
439 vim-base_files += "/usr/share/vim/vim74/ftplugof.vim"
440 vim-base_files += "/usr/share/vim/vim74/indent.vim"
441 vim-base_files += "/usr/share/vim/vim74/indoff.vim"
442 vim-base_files += "/usr/share/vim/vim74/optwin.vim"
443 vim-base_files += "/usr/share/vim/vim74/scripts.vim"
444 vim-base_files += "/usr/share/vim/vim74/syntax/syntax.vim"
447 vim_files += "vim.manifest"
448 vim_files += "/usr/bin/vim-normal"
451 vim-docs_files += "/usr/share/info"
452 vim-docs_files += "/usr/share/man"
454 vim-enhanced_files = ""
455 vim-enhanced_files += "vim.manifest"
456 vim-enhanced_files += "/usr/bin/vim-enhanced"
458 FILES_${PN}-data = "${vim-data_files}"
459 FILES_${PN}-base = "${vim-base_files}"
460 FILES_${PN} = "${vim_files}"
461 FILES_${PN}-docs = "${vim-docs_files}"
462 FILES_${PN}-enhanced = "${vim-enhanced_files}"
464 PKG_vim-data= "vim-data"
465 PKG_vim-base= "vim-base"
467 PKG_vim-docs= "vim-docs"
468 PKG_vim-enhanced= "vim-enhanced"
470 require vim-extraconf.inc