aboutsummaryrefslogtreecommitdiff
path: root/examples/vim/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'examples/vim/Makefile')
-rw-r--r--examples/vim/Makefile129
1 files changed, 129 insertions, 0 deletions
diff --git a/examples/vim/Makefile b/examples/vim/Makefile
new file mode 100644
index 0000000..56ba8f2
--- /dev/null
+++ b/examples/vim/Makefile
@@ -0,0 +1,129 @@
+package ?= ips
+include /usr/share/cibs/rules/$(package).mk
+include /usr/share/cibs/rules/hg.mk
+bits = 64
+
+license := ViM
+license-file := vim.license
+
+hg-url := https://vim.googlecode.com/hg/
+download := $(hg-url)
+home := http://www.vim.org
+name := vim
+version := 7.3.905
+# hg update $(hg-update)
+hg-update := v$(subst .,-,$(version))
+
+build-depends += \
+ developer/build/autoconf \
+ developer/python \
+ library/tinfo
+
+
+pre-configure-stamp: autoconf-stamp
+autoconf-stamp: patch-stamp
+ cp $(sourcedir)/src/config.mk.dist $(sourcedir)/src/auto/config.mk
+ $(MAKE) -C $(sourcedir)/src autoconf
+ $(MAKE) -C $(sourcedir) distclean
+ touch $@
+
+$(eval $(call add-variant,basic))
+$(eval $(call add-variant,nox))
+$(eval $(call add-variant,tiny))
+
+# Clean protodir, because they do not exist, we do not use them,
+# and pkg requires them to exist
+pkg-protos := -d .
+
+configure-options := \
+ --prefix=/usr \
+ --mandir='$${prefix}'/share/man \
+ --without-local-dir \
+ --enable-fail-if-missing \
+
+configure-options.nox := $(configure-options) \
+ --without-x --enable-gui=no \
+ --enable-pythoninterp \
+
+configure-options.tiny := $(configure-options) \
+ --with-features=small \
+ --disable-gui \
+ --disable-xsmp \
+ --disable-xsmp-interact \
+ --disable-netbeans \
+ --enable-nls \
+ --enable-multibyte \
+ --enable-acl \
+
+configure-options.basic := $(configure-options.nox) \
+ --disable-luainterp \
+ --disable-mzschemeinterp \
+ --disable-perlinterp \
+ --disable-pythoninterp \
+ --disable-python3interp \
+ --disable-rubyinterp \
+ --disable-tclinterp \
+
+d_tmp := work/proto/tmp
+d_common := work/proto/vim-common
+d_runtime := work/proto/vim-runtime
+movefiles := /usr/share/cibs/scripts/movefiles
+
+# We are building in source dir, but within subdirs:
+configure-%-stamp: SHADOWDIR=vim-$*
+configure-%-stamp:
+ $(MAKE) -C $(sourcedir)/src shadow SHADOWDIR=$(SHADOWDIR)
+ cd $(sourcedir) && if test -f src/auto/config.cache; then make distclean; fi
+ cd $(sourcedir)/src/$(SHADOWDIR) && \
+ LDFLAGS="$(LDFLAGS)" CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" CC="$(CC)"\
+ ./configure $(configure-options.$*)
+ touch $@
+
+build-%-stamp: SHADOWDIR=vim-$*
+build-%-stamp:
+ $(MAKE) -C $(sourcedir)/src/$(SHADOWDIR)
+ touch $@
+
+install-basic-stamp:
+ $(MAKE) -C $(sourcedir)/src/vim-basic DESTDIR=$(topdir)/$(d_tmp) \
+ installvimbin \
+ installtutorbin \
+ installgtutorbin \
+ installruntime \
+ installtools \
+ install-icons \
+ install-languages
+ rm -f $(protodir)/usr/bin/vim
+ touch $@
+
+install-nox-stamp install-tiny-stamp:
+ touch $@
+
+post-install-stamp: vim-common-stamp vim-runtime-stamp
+vim-common-stamp: install-stamp
+ mkdir -p $(d_common)
+ $(movefiles) -s $(d_tmp) -d $(d_common) \
+ usr/bin/xxd \
+ usr/share/man/man1/xxd.1 \
+ usr/share/man/man1/vimdiff.1 \
+ usr/share/man/man1/vim.1
+ mkdir -p $(d_common)/etc/vim
+ mkdir -p $(d_common)/usr/share/vim
+ mkdir -p $(d_common)/var/lib/vim/addons
+ cp vimrc $(d_common)/etc/vim/vimrc
+ ln -sf ../../../etc/vim $(d_common)/usr/share/vim/vimfiles
+ ln -sf ../../../etc/vim/vimrc $(d_common)/usr/share/vim/vimrc
+ ln -sf vim73 $(d_common)/usr/share/vim/vimcurrent
+ ln -sf vim.1 $(d_common)/usr/share/man/man1/rvim.1
+ ln -sf vim.1 $(d_common)/usr/share/man/man1/rview.1
+ touch $@
+
+vim-runtime-stamp: install-stamp
+ mkdir -p $(d_runtime)
+ $(movefiles) -s $(d_tmp) -d $(d_runtime) \
+ usr/bin/vimtutor \
+ usr/share/man/man1/vimtutor.1 \
+ usr/share/vim
+ touch $@
+
+