aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoradamw <adamw@FreeBSD.org>2018-01-09 03:44:13 +0800
committeradamw <adamw@FreeBSD.org>2018-01-09 03:44:13 +0800
commit184d3321d9f6f2987c7cc838949b7801e4e64a99 (patch)
tree7e29ca1cd3d83b813e8da78483a5db651348c0d9
parentca2931d223ea88326c8590a4dd54d929f1feb70f (diff)
downloadfreebsd-ports-gnome-184d3321d9f6f2987c7cc838949b7801e4e64a99.tar.gz
freebsd-ports-gnome-184d3321d9f6f2987c7cc838949b7801e4e64a99.tar.zst
freebsd-ports-gnome-184d3321d9f6f2987c7cc838949b7801e4e64a99.zip
Add editors/vim-tiny.
By popular request, this is a slave port that installs only the vim binary. It has no dependencies, produces a 1 MB package with a 3 MB installed footprint, and is unable to do anything except edit files. It contains no help files, no runtime files, no syntax highlighting, no filetype-specific indenting, non-US keymaps, macros, or spell-checking. vim-tiny is designed for minimal installs, and is the wrong choice for most users.
-rw-r--r--editors/Makefile1
-rw-r--r--editors/vim-lite/Makefile2
-rw-r--r--editors/vim-tiny/Makefile22
-rw-r--r--editors/vim-tiny/pkg-descr15
-rw-r--r--editors/vim/Makefile11
5 files changed, 48 insertions, 3 deletions
diff --git a/editors/Makefile b/editors/Makefile
index bfb8c2f41859..28fe8debe1e8 100644
--- a/editors/Makefile
+++ b/editors/Makefile
@@ -244,6 +244,7 @@
SUBDIR += vile
SUBDIR += vim
SUBDIR += vim-lite
+ SUBDIR += vim-tiny
SUBDIR += web-mode
SUBDIR += with-editor
SUBDIR += wordgrinder
diff --git a/editors/vim-lite/Makefile b/editors/vim-lite/Makefile
index eaffd721e0d0..dc1251dfd113 100644
--- a/editors/vim-lite/Makefile
+++ b/editors/vim-lite/Makefile
@@ -5,7 +5,7 @@ PKGNAMESUFFIX= -lite
COMMENT= Improved version of the vi editor (lite package)
-CONFLICTS_INSTALL= vim-[0-9]*
+CONFLICTS_INSTALL= vim vim-tiny
LITE= yes
MASTERDIR= ${.CURDIR}/../vim
diff --git a/editors/vim-tiny/Makefile b/editors/vim-tiny/Makefile
new file mode 100644
index 000000000000..028e3344685f
--- /dev/null
+++ b/editors/vim-tiny/Makefile
@@ -0,0 +1,22 @@
+# Created by: Adam Weinberger <adamw@FreeBSD.org>
+# $FreeBSD$
+
+PKGNAMESUFFIX= -tiny
+
+COMMENT= Improved version of the vi editor (vim binary only)
+
+CONFLICTS_INSTALL= vim vim-lite
+
+TINY= yes
+MASTERDIR= ${.CURDIR}/../vim
+
+PORTDATA= # Not for -tiny
+PLIST= # Not for -tiny
+PLIST_FILES= bin/vim \
+ man/man1/vim.1.gz
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/vim ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_MAN} ${WRKSRC}/runtime/doc/vim.1 ${STAGEDIR}${MAN1PREFIX}/man/man1
+
+.include "${MASTERDIR}/Makefile"
diff --git a/editors/vim-tiny/pkg-descr b/editors/vim-tiny/pkg-descr
new file mode 100644
index 000000000000..628f3c059f7e
--- /dev/null
+++ b/editors/vim-tiny/pkg-descr
@@ -0,0 +1,15 @@
+Vim is a highly configurable text editor built to enable efficient text editing.
+It is an improved version of the vi editor distributed with most UNIX systems.
+
+Vim is often called a "programmer's editor," and so useful for programming that
+many consider it an entire IDE. It's not just for programmers, though. Vim is
+perfect for all kinds of text editing, from composing email to editing
+configuration files.
+
+This is the "tiny" version, which is console-only and contains ONLY the vim
+binary. It contains no help files, syntax files, or any other runtime files,
+and is designed only for minimal installs. You almost always want the vim
+or vim-lite package instead.
+
+WWW: http://www.vim.org/
+WWW: https://github.com/vim/vim
diff --git a/editors/vim/Makefile b/editors/vim/Makefile
index 36bb1da1702b..c50c1fb1641e 100644
--- a/editors/vim/Makefile
+++ b/editors/vim/Makefile
@@ -14,7 +14,7 @@ LICENSE_NAME= VIM License
LICENSE_FILE= ${WRKSRC}/runtime/doc/uganda.txt
LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
-CONFLICTS_INSTALL?= vim-lite-[0-9]*
+CONFLICTS_INSTALL?= vim-lite vim-tiny
USES= cpe iconv ncurses pkgconfig shebangfix
USE_GITHUB= yes
@@ -30,7 +30,7 @@ CPE_VERSION= ${PORTVERSION:R}
GNU_CONFIGURE= yes
MAKE_JOBS_UNSAFE= yes
PLIST_SUB= VIM_VER=${VIM_VER}
-PORTDATA= ${VIM_VER}
+PORTDATA?= ${VIM_VER}
PORTSCOUT= ignore:1
REINPLACE_ARGS= -i ''
SHEBANG_FILES= runtime/tools/demoserver.py runtime/tools/efm_perl.pl
@@ -52,6 +52,11 @@ OPTIONS_SLAVE= CONSOLE
OPTIONS_EXCLUDE:= ${OPTIONS_DEFINE:NDEFAULT_VIMRC} \
${OPTIONS_SINGLE_UI:NCONSOLE} \
${OPTIONS_GROUP_LANGBIND}
+.elif defined(TINY)
+OPTIONS_SLAVE= CONSOLE
+OPTIONS_EXCLUDE:= ${OPTIONS_DEFINE} \
+ ${OPTIONS_SINGLE_UI:NCONSOLE} \
+ ${OPTIONS_GROUP_LANGBIND}
.endif
DEFAULT_VIMRC_DESC= Install bundled vimrc as default setting
@@ -156,6 +161,7 @@ post-configure:
# Needed when devel/libsysinfo is installed:
@${REINPLACE_CMD} -e '/#define HAVE_SYSINFO 1/ d' ${WRKSRC}/src/auto/config.h
+.if !defined(TINY)
post-install:
@${RM} ${STAGEDIR}${PREFIX}/bin/ex
@${RM} ${STAGEDIR}${PREFIX}/bin/view
@@ -187,5 +193,6 @@ post-install-NLS-off:
@${MKDIR} ${STAGEDIR}${DATADIR}/${VIM_VER}/lang
@${MKDIR} ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap
${INSTALL_DATA} ${WRKSRC}/runtime/keymap/* ${STAGEDIR}${DATADIR}/${VIM_VER}/keymap
+.endif #!defined(TINY)
.include <bsd.port.mk>