vim.spec 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393
  1. ##
  2. ## vim.spec -- OpenPKG RPM Package Specification
  3. ## Copyright (c) 2000-2008 OpenPKG Foundation e.V. <http://openpkg.net/>
  4. ##
  5. ## Permission to use, copy, modify, and distribute this software for
  6. ## any purpose with or without fee is hereby granted, provided that
  7. ## the above copyright notice and this permission notice appear in all
  8. ## copies.
  9. ##
  10. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  11. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  12. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  13. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  14. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  15. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  16. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  17. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  18. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  19. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  20. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  21. ## SUCH DAMAGE.
  22. ##
  23. # package versions
  24. %define V_vl 7.2
  25. %define V_vs 72
  26. %define V_pl 147
  27. # package information
  28. Name: vim
  29. Summary: The Vi (Improved) Text Editor
  30. URL: http://www.vim.org/
  31. Vendor: Bram Moolenaar et al.
  32. Packager: OpenPKG Foundation e.V.
  33. Distribution: OpenPKG Community
  34. Class: CORE
  35. Group: Editor
  36. License: Charityware
  37. Version: %{V_vl}.%{V_pl}
  38. Release: 20090318
  39. # package options
  40. %option with_x11 no
  41. %option with_features normal
  42. %option with_multibyte no
  43. %option with_perl no
  44. %option with_python no
  45. %option with_tcl no
  46. %option with_ruby no
  47. # list of sources
  48. Source0: ftp://ftp.vim.org/pub/vim/unix/vim-%{V_vl}.tar.bz2
  49. Source2: rc.vim
  50. Source3: vimrc
  51. Patch0: vim.patch
  52. Patch1: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.001
  53. Patch2: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.002
  54. Patch3: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.003
  55. Patch4: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.004
  56. Patch5: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.005
  57. Patch6: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.006
  58. Patch7: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.007
  59. Patch8: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.008
  60. Patch9: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.009
  61. Patch10: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.010
  62. Patch11: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.011
  63. Patch12: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.012
  64. Patch13: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.013
  65. Patch14: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.014
  66. Patch15: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.015
  67. Patch16: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.016
  68. Patch17: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.017
  69. Patch18: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.018
  70. Patch19: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.019
  71. Patch20: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.020
  72. Patch21: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.021
  73. Patch22: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.022
  74. Patch23: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.023
  75. Patch24: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.024
  76. Patch25: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.025
  77. Patch26: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.026
  78. Patch27: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.027
  79. Patch28: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.028
  80. Patch29: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.029
  81. Patch30: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.030
  82. Patch31: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.031
  83. Patch32: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.032
  84. Patch33: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.033
  85. Patch34: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.034
  86. Patch35: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.035
  87. Patch36: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.036
  88. Patch37: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.037
  89. Patch38: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.038
  90. Patch39: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.039
  91. Patch40: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.040
  92. Patch41: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.041
  93. Patch42: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.042
  94. Patch43: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.043
  95. Patch44: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.044
  96. Patch45: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.045
  97. Patch46: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.046
  98. Patch47: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.047
  99. Patch48: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.048
  100. Patch49: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.049
  101. Patch50: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.050
  102. Patch51: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.051
  103. Patch52: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.052
  104. Patch53: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.053
  105. Patch54: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.054
  106. Patch55: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.055
  107. Patch56: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.056
  108. Patch57: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.057
  109. Patch58: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.058
  110. Patch59: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.059
  111. Patch60: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.060
  112. Patch61: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.061
  113. Patch62: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.062
  114. Patch63: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.063
  115. Patch64: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.064
  116. Patch65: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.065
  117. Patch66: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.066
  118. Patch67: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.067
  119. Patch68: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.068
  120. Patch69: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.069
  121. Patch70: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.070
  122. Patch71: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.071
  123. Patch72: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.072
  124. Patch73: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.073
  125. Patch74: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.074
  126. Patch75: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.075
  127. Patch76: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.076
  128. Patch77: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.077
  129. Patch78: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.078
  130. Patch79: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.079
  131. Patch80: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.080
  132. Patch81: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.081
  133. Patch82: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.082
  134. Patch83: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.083
  135. Patch84: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.084
  136. Patch85: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.085
  137. Patch86: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.086
  138. Patch87: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.087
  139. Patch88: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.088
  140. Patch89: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.089
  141. Patch90: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.090
  142. Patch91: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.091
  143. Patch92: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.092
  144. Patch93: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.093
  145. Patch94: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.094
  146. Patch95: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.095
  147. Patch96: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.096
  148. Patch97: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.097
  149. Patch98: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.098
  150. Patch99: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.099
  151. Patch100: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.100
  152. Patch101: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.101
  153. Patch102: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.102
  154. Patch103: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.103
  155. Patch104: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.104
  156. Patch105: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.105
  157. Patch106: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.106
  158. Patch107: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.107
  159. Patch108: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.108
  160. Patch109: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.109
  161. Patch110: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.110
  162. Patch111: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.111
  163. Patch112: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.112
  164. Patch113: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.113
  165. Patch114: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.114
  166. Patch115: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.115
  167. Patch116: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.116
  168. Patch117: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.117
  169. Patch118: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.118
  170. Patch119: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.119
  171. Patch120: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.120
  172. Patch121: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.121
  173. Patch122: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.122
  174. Patch123: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.123
  175. Patch124: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.124
  176. Patch125: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.125
  177. Patch126: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.126
  178. Patch127: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.127
  179. Patch128: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.128
  180. Patch129: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.129
  181. Patch130: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.130
  182. Patch131: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.131
  183. Patch132: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.132
  184. Patch133: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.133
  185. Patch134: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.134
  186. Patch135: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.135
  187. Patch136: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.136
  188. Patch137: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.137
  189. Patch138: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.138
  190. Patch139: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.139
  191. Patch140: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.140
  192. Patch141: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.141
  193. Patch142: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.142
  194. Patch143: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.143
  195. Patch144: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.144
  196. Patch145: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.145
  197. Patch146: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.146
  198. Patch147: ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/%{V_vl}.147
  199. # build information
  200. Prefix: %{l_prefix}
  201. BuildRoot: %{l_buildroot}
  202. BuildPreReq: OpenPKG, openpkg >= 20060823, ncurses
  203. PreReq: OpenPKG, openpkg >= 20060823, ncurses
  204. %if "%{with_x11}" == "yes"
  205. BuildPreReq: X11, gtk
  206. PreReq: X11, gtk
  207. %endif
  208. %if "%{with_perl}" == "yes"
  209. BuildPreReq: perl
  210. PreReq: perl
  211. %endif
  212. %if "%{with_python}" == "yes"
  213. BuildPreReq: python
  214. PreReq: python
  215. %endif
  216. %if "%{with_tcl}" == "yes"
  217. BuildPreReq: tcl
  218. PreReq: tcl
  219. %endif
  220. %if "%{with_ruby}" == "yes"
  221. BuildPreReq: ruby
  222. PreReq: ruby
  223. %endif
  224. AutoReq: no
  225. AutoReqProv: no
  226. %description
  227. Vim (Vi Improved) is a text editor that is upwards compatible
  228. with the classical Unix Vi. It can be used to edit any ASCII
  229. text. It is especially useful for editing programs. Vim offers
  230. a lot of enhancements not available in the traditional Vi. For
  231. example, Vim has multi level undo, multi windows and buffers, syntax
  232. highlighting, command line editing, filename completion, on-line
  233. help, and visual selection.
  234. %track
  235. prog vim = {
  236. version = %{V_vl}
  237. url = ftp://ftp.vim.org/pub/vim/unix/
  238. regex = vim-(\d+.\d+)\.tar\.(gz|bz2)
  239. }
  240. prog vim:patchlevel = {
  241. version = %{V_vl}.%{V_pl}
  242. url = ftp://ftp.vim.org/pub/vim/patches/%{V_vl}/
  243. regex = (%{V_vl}\.\d+)
  244. }
  245. %prep
  246. # unpack base distribution parts
  247. %setup -q -c
  248. %patch -p0
  249. # apply remaining single patches
  250. i=1
  251. while [ $i -le %{V_pl} ]; do
  252. cat $RPM_SOURCE_DIR/%{V_vl}.`echo $i | awk '{ printf("%03d", $0); }'` |\
  253. %{l_patch} -p0 -E -t -s >/dev/null 2>&1 || true
  254. i=`expr $i + 1`
  255. done
  256. # adjust introduction text for OpenPKG branding
  257. %{l_shtool} subst \
  258. -e 's;Modified by;Packaged by;' \
  259. vim%{V_vs}/src/version.c
  260. # adjust paths to global configuraton files
  261. %{l_shtool} subst \
  262. -e 's;^/\* \(#define SYS_VIMRC_FILE\).*$;\1 "%{l_prefix}/etc/vim/vimrc";' \
  263. -e 's;^/\* \(#define SYS_GVIMRC_FILE\).*$;\1 "%{l_prefix}/etc/vim/gvimrc";' \
  264. vim%{V_vs}/src/feature.h
  265. %if "%{with_python}" == "yes"
  266. # fix Python includes
  267. %{l_shtool} subst \
  268. -e 's;PYTHON_CFLAGS=.*$;PYTHON_CFLAGS="`python-config --includes`";' \
  269. vim%{V_vs}/src/auto/configure
  270. %endif
  271. %build
  272. # configure package
  273. cd vim%{V_vs}/src
  274. CC="%{l_cc}" \
  275. CFLAGS="%{l_cflags -O}" \
  276. CPPFLAGS="%{l_cppflags}" \
  277. LDFLAGS="%{l_ldflags}" \
  278. ./configure \
  279. --prefix=%{l_prefix} \
  280. --mandir=%{l_prefix}/man \
  281. --with-global-runtime=%{l_prefix}/etc/vim \
  282. --with-modified-by='%{l_openpkg_release}' \
  283. %if "%{with_x11}" == "yes"
  284. --with-x \
  285. --x-includes=`%{l_rc} --query x11_incdir` \
  286. --x-libraries=`%{l_rc} --query x11_libdir` \
  287. --enable-gui=gtk \
  288. --with-gtk-prefix=%{l_prefix} \
  289. --disable-gtktest \
  290. --without-gnome \
  291. %else
  292. --without-x \
  293. --disable-gui \
  294. %endif
  295. %if "%{with_features}" == "huge"
  296. --with-features=huge \
  297. %else
  298. %if "%{with_features}" == "big"
  299. --with-features=big \
  300. %else
  301. %if "%{with_features}" == "small"
  302. --with-features=small \
  303. %else
  304. --with-features=normal \
  305. %endif
  306. %endif
  307. %endif
  308. %if "%{with_multibyte}" == "yes"
  309. --enable-multibyte \
  310. %endif
  311. %if "%{with_perl}" == "yes"
  312. --enable-perlinterp \
  313. %endif
  314. %if "%{with_python}" == "yes"
  315. --enable-pythoninterp \
  316. --with-python-config-dir=%{l_prefix}/lib/python/config \
  317. %endif
  318. %if "%{with_tcl}" == "yes"
  319. --enable-tclinterp \
  320. %endif
  321. %if "%{with_ruby}" == "yes"
  322. --enable-rubyinterp \
  323. %endif
  324. --disable-nls
  325. %{l_shtool} subst \
  326. -e 's;^\(VIMRTDIR[^=]*=\).*;\1;' \
  327. Makefile
  328. # build package
  329. %{l_make} %{l_mflags -O}
  330. %install
  331. # perform package installation procedure
  332. rm -rf $RPM_BUILD_ROOT
  333. ( cd vim%{V_vs}/src
  334. %{l_make} %{l_mflags} install \
  335. prefix=$RPM_BUILD_ROOT%{l_prefix} \
  336. MANDIR=$RPM_BUILD_ROOT%{l_prefix}/man
  337. ) || exit $?
  338. # strip down installation hierarchy
  339. strip $RPM_BUILD_ROOT%{l_prefix}/bin/vim >/dev/null 2>&1 || true
  340. rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/xxd
  341. rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/xxd.1
  342. rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/vim/tools
  343. rm -rf $RPM_BUILD_ROOT%{l_prefix}/share/vim/macros
  344. # add links for program runtime variants
  345. for link in vi ex rview rvim view vimdiff; do
  346. rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/$link
  347. ln $RPM_BUILD_ROOT%{l_prefix}/bin/vim \
  348. $RPM_BUILD_ROOT%{l_prefix}/bin/$link
  349. rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/$link.1
  350. ln $RPM_BUILD_ROOT%{l_prefix}/man/man1/vim.1 \
  351. $RPM_BUILD_ROOT%{l_prefix}/man/man1/$link.1
  352. done
  353. # install run-command script
  354. %{l_shtool} mkdir -f -p -m 755 \
  355. $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
  356. %{l_shtool} install -c -m 755 %{l_value -s -a} \
  357. %{SOURCE rc.vim} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
  358. # install default configuration
  359. %{l_shtool} mkdir -f -p -m 755 \
  360. $RPM_BUILD_ROOT%{l_prefix}/etc/vim
  361. %{l_shtool} install -c -m 755 %{l_value -s -a} \
  362. %{SOURCE vimrc} $RPM_BUILD_ROOT%{l_prefix}/etc/vim/
  363. # determine installation files
  364. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
  365. %{l_files_std} \
  366. '%config %{l_prefix}/etc/vim/vimrc'
  367. %files -f files
  368. %clean
  369. rm -rf $RPM_BUILD_ROOT