summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support/vim/vim.inc
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2019-05-17 15:53:09 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-05-21 12:56:33 +0100
commit6d401d808a8edee8ffb2d5abe843214057b3189b (patch)
tree333314b7271ace53c702789d111aaa2ca690f297 /meta/recipes-support/vim/vim.inc
parent3b06404e30e1f163175002ec95ec39b9e7a21e00 (diff)
downloadpoky-6d401d808a8edee8ffb2d5abe843214057b3189b.tar.gz
vim: split the common part into vim.inc
Previously vim-tiny would include the vim recipe wholesale; this meant that they had to be upgraded in a single transaction which devtool cannot cope with. This thwarted the latest AUH run in particular. (From OE-Core rev: 55cc8c6dbef8de240f63e7274a2beaf421124b58) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-support/vim/vim.inc')
-rw-r--r--meta/recipes-support/vim/vim.inc141
1 files changed, 141 insertions, 0 deletions
diff --git a/meta/recipes-support/vim/vim.inc b/meta/recipes-support/vim/vim.inc
new file mode 100644
index 0000000000..f5c74684bf
--- /dev/null
+++ b/meta/recipes-support/vim/vim.inc
@@ -0,0 +1,141 @@
1SUMMARY = "Vi IMproved - enhanced vi editor"
2SECTION = "console/utils"
3
4PROVIDES = "xxd"
5DEPENDS = "ncurses gettext-native"
6# vimdiff doesn't like busybox diff
7RSUGGESTS_${PN} = "diffutils"
8LICENSE = "vim"
9LIC_FILES_CHKSUM = "file://runtime/doc/uganda.txt;endline=287;md5=f1f82b42360005c70b8c19b0ef493f72"
10
11SRC_URI = "git://github.com/vim/vim.git \
12 file://disable_acl_header_check.patch \
13 file://vim-add-knob-whether-elf.h-are-checked.patch \
14 file://0001-src-Makefile-improve-reproducibility.patch \
15"
16SRCREV = "d96dbd6f95ea22f609042cc9c6272f14a21ff1a5"
17
18S = "${WORKDIR}/git"
19
20VIMDIR = "vim${@d.getVar('PV').split('.')[0]}${@d.getVar('PV').split('.')[1]}"
21
22inherit autotools-brokensep update-alternatives
23
24CLEANBROKEN = "1"
25
26# vim configure.in contains functions which got 'dropped' by autotools.bbclass
27do_configure () {
28 cd src
29 rm -f auto/*
30 touch auto/config.mk
31 aclocal
32 autoconf
33 cd ..
34 oe_runconf
35 touch src/auto/configure
36 touch src/auto/config.mk src/auto/config.h
37}
38
39do_compile() {
40 # We do not support fully / correctly the following locales. Attempting
41 # to use these with msgfmt in order to update the ".desktop" files exposes
42 # this problem and leads to the compile failing.
43 for LOCALE in cs fr ko pl sk zh_CN zh_TW;do
44 echo -n > src/po/${LOCALE}.po
45 done
46 autotools_do_compile
47}
48
49#Available PACKAGECONFIG options are gtkgui, acl, x11, tiny
50PACKAGECONFIG ??= ""
51PACKAGECONFIG += " \
52 ${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)} \
53 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtkgui', '', d)} \
54"
55PACKAGECONFIG_class-native = ""
56
57PACKAGECONFIG[gtkgui] = "--enable-gui=gtk2,--enable-gui=no,gtk+,"
58PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl,"
59PACKAGECONFIG[x11] = "--with-x,--without-x,xt,"
60PACKAGECONFIG[tiny] = "--with-features=tiny,--with-features=big,,"
61PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux,"
62PACKAGECONFIG[elfutils] = "--enable-elf-check,,elfutils,"
63
64EXTRA_OECONF = " \
65 --disable-gpm \
66 --disable-gtktest \
67 --disable-xim \
68 --disable-netbeans \
69 --with-tlib=ncurses \
70 ac_cv_small_wchar_t=no \
71 vim_cv_getcwd_broken=no \
72 vim_cv_memmove_handles_overlap=yes \
73 vim_cv_stat_ignores_slash=no \
74 vim_cv_terminfo=yes \
75 vim_cv_tgetent=non-zero \
76 vim_cv_toupper_broken=no \
77 vim_cv_tty_group=world \
78 STRIP=/bin/true \
79"
80
81do_install() {
82 autotools_do_install
83
84 # Work around file-rdeps picking up csh, awk, perl or python as a dep
85 chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/vim132
86 chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/mve.awk
87 chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.pl
88 chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.py
89
90 # Install example vimrc from runtime files
91 install -m 0644 runtime/vimrc_example.vim ${D}/${datadir}/${BPN}/vimrc
92
93 # we use --with-features=big as default
94 mv ${D}${bindir}/${BPN} ${D}${bindir}/${BPN}.${BPN}
95
96 if ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'true', 'false', d)}; then
97 # The mouse being autoenabled is just annoying in xfce4-terminal (mouse
98 # drag make vim go into visual mode and there is no right click menu),
99 # delete the block.
100 sed -i '/the mouse works just fine/,+4d' ${D}/${datadir}/${BPN}/vimrc
101 fi
102}
103
104PARALLEL_MAKEINST = ""
105
106PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools"
107FILES_${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax"
108FILES_${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc"
109FILES_${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor ${bindir}/${BPN}tutor"
110FILES_${PN}-vimrc = "${datadir}/${BPN}/vimrc"
111FILES_${PN}-data = "${datadir}/${BPN}"
112FILES_${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools"
113FILES_${PN}-common = " \
114 ${datadir}/${BPN}/${VIMDIR}/*.vim \
115 ${datadir}/${BPN}/${VIMDIR}/autoload \
116 ${datadir}/${BPN}/${VIMDIR}/colors \
117 ${datadir}/${BPN}/${VIMDIR}/compiler \
118 ${datadir}/${BPN}/${VIMDIR}/ftplugin \
119 ${datadir}/${BPN}/${VIMDIR}/indent \
120 ${datadir}/${BPN}/${VIMDIR}/keymap \
121 ${datadir}/${BPN}/${VIMDIR}/lang \
122 ${datadir}/${BPN}/${VIMDIR}/macros \
123 ${datadir}/${BPN}/${VIMDIR}/plugin \
124 ${datadir}/${BPN}/${VIMDIR}/print \
125 ${datadir}/${BPN}/${VIMDIR}/spell \
126 ${datadir}/icons \
127"
128
129RDEPENDS_${BPN} = "ncurses-terminfo-base"
130# Recommend that runtime data is installed along with vim
131RRECOMMENDS_${BPN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common"
132
133ALTERNATIVE_${PN} = "vi vim xxd"
134ALTERNATIVE_PRIORITY = "100"
135ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}"
136ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi"
137ALTERNATIVE_LINK_NAME[vim] = "${bindir}/vim"
138ALTERNATIVE_TARGET[xxd] = "${bindir}/xxd"
139ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd"
140
141BBCLASSEXTEND = "native"