diff src/feature.h @ 30731:2295ee9c025d v9.0.0700

patch 9.0.0700: there is no real need for a "big" build Commit: https://github.com/vim/vim/commit/25f3a146a0e4c731b8608f4cfbbfdf7a71b2d05e Author: Martin Tournoij <martin@arp242.net> Date: Sat Oct 8 19:26:41 2022 +0100 patch 9.0.0700: there is no real need for a "big" build Problem: There is no real need for a "big" build. Solution: Move common features to "normal" build, less often used features to the "huge" build. (Martin Tournoij, closes #11283)
author Bram Moolenaar <Bram@vim.org>
date Sat, 08 Oct 2022 20:30:05 +0200
parents 6ceb06c2c6ae
children c11da68d1a32
line wrap: on
line diff
--- a/src/feature.h
+++ b/src/feature.h
@@ -33,10 +33,9 @@
  *
  * +tiny		no optional features enabled, not even +eval
  * +normal		a default selection of features enabled
- * +big			many features enabled, except "expensive" ones
  * +huge		all possible features enabled.
  *
- * When +normal is used, +tiny is also included.  +big implies +normal, etc.
+ * When +normal is used, +tiny is also included.  +huge implies +normal, etc.
  */
 
 /*
@@ -50,33 +49,35 @@
 #endif
 
 /*
+ * +big is now an alias for +normal
+ */
+#if defined(FEAT_BIG)
+# undef FEAT_BIG
+# if !defined(FEAT_NORMAL)
+#  define FEAT_NORMAL
+# endif
+#endif
+
+/*
  * Uncomment one of these to override the default.  For unix use a configure
  * argument, see Makefile.
  */
-#if !defined(FEAT_TINY) && !defined(FEAT_NORMAL) \
-	&& !defined(FEAT_BIG) && !defined(FEAT_HUGE)
+#if !defined(FEAT_TINY) && !defined(FEAT_NORMAL) && !defined(FEAT_HUGE)
 // #define FEAT_TINY
 // #define FEAT_NORMAL
-// #define FEAT_BIG
 // #define FEAT_HUGE
 #endif
 
 /*
  * For Unix, Mac and Win32 use +huge by default.  These days CPUs are fast and
  * Memory is cheap.
- * Use +big for older systems: VMS and Amiga.
  * Otherwise use +normal
  */
-#if !defined(FEAT_TINY) && !defined(FEAT_NORMAL) \
-	&& !defined(FEAT_BIG) && !defined(FEAT_HUGE)
+#if !defined(FEAT_TINY) && !defined(FEAT_NORMAL) && !defined(FEAT_HUGE)
 # if defined(UNIX) || defined(MSWIN) || defined(MACOS_X)
 #  define FEAT_HUGE
 # else
-#  if defined(VMS) || defined(AMIGA)
-#   define FEAT_BIG
-#  else
-#   define FEAT_NORMAL
-#  endif
+#  define FEAT_NORMAL
 # endif
 #endif
 
@@ -84,9 +85,6 @@
  * Each feature implies including the "smaller" ones.
  */
 #ifdef FEAT_HUGE
-# define FEAT_BIG
-#endif
-#ifdef FEAT_BIG
 # define FEAT_NORMAL
 #endif
 #ifdef FEAT_NORMAL
@@ -164,7 +162,7 @@
  *			keyboard in a special language mode, e.g. for typing
  *			greek.
  */
-#ifdef FEAT_BIG
+#ifdef FEAT_HUGE
 # define FEAT_LANGMAP
 #endif
 
@@ -172,7 +170,7 @@
  * +keymap		'keymap' option.  Allows you to map typed keys in
  *			Insert mode for a special language.
  */
-#ifdef FEAT_BIG
+#ifdef FEAT_HUGE
 # define FEAT_KEYMAP
 #endif
 
@@ -219,7 +217,7 @@
 /*
  * +rightleft		Right-to-left editing/typing support.
  */
-#if defined(FEAT_BIG) && !defined(DISABLE_RIGHTLEFT)
+#if defined(FEAT_HUGE) && !defined(DISABLE_RIGHTLEFT)
 # define FEAT_RIGHTLEFT
 #endif
 
@@ -227,7 +225,7 @@
  * +arabic		Arabic keymap and shaping support.
  *			Requires FEAT_RIGHTLEFT
  */
-#if defined(FEAT_BIG) && !defined(DISABLE_ARABIC)
+#if defined(FEAT_HUGE) && !defined(DISABLE_ARABIC)
 # define FEAT_ARABIC
 #endif
 #ifdef FEAT_ARABIC
@@ -252,14 +250,14 @@
  * +emacs_tags		When FEAT_EMACS_TAGS defined: Include support for
  *			emacs style TAGS file.
  */
-#ifdef FEAT_BIG
+#ifdef FEAT_HUGE
 # define FEAT_EMACS_TAGS
 #endif
 
 /*
  * +cscope		Unix only: Cscope support.
  */
-#if defined(UNIX) && defined(FEAT_BIG) && !defined(FEAT_CSCOPE) && !defined(MACOS_X)
+#if defined(UNIX) && defined(FEAT_HUGE) && !defined(FEAT_CSCOPE) && !defined(MACOS_X)
 # define FEAT_CSCOPE
 #endif
 
@@ -374,7 +372,7 @@
  * +conceal		'conceal' option.  Depends on syntax highlighting
  *			as this is how the concealed text is defined.
  */
-#if defined(FEAT_BIG) && defined(FEAT_SYN_HL)
+#if defined(FEAT_NORMAL) && defined(FEAT_SYN_HL)
 # define FEAT_CONCEAL
 #endif
 
@@ -395,7 +393,7 @@
 /*
  * libsodium - add cryptography support
  */
-#if defined(HAVE_SODIUM) && defined(FEAT_BIG)
+#if defined(HAVE_SODIUM) && defined(FEAT_HUGE)
 # define FEAT_SODIUM
 #endif
 
@@ -428,7 +426,7 @@
 // #define FEAT_MBYTE_IME
 #endif
 
-#if defined(FEAT_BIG) && defined(FEAT_GUI_HAIKU) && !defined(FEAT_MBYTE_IME)
+#if defined(FEAT_HUGE) && defined(FEAT_GUI_HAIKU) && !defined(FEAT_MBYTE_IME)
 # define FEAT_MBYTE_IME
 #endif
 
@@ -606,14 +604,14 @@
 /*
  * +termguicolors	'termguicolors' option.
  */
-#if (defined(FEAT_BIG) && defined(FEAT_SYN_HL)) && !defined(ALWAYS_USE_GUI)
+#if (defined(FEAT_NORMAL) && defined(FEAT_SYN_HL)) && !defined(ALWAYS_USE_GUI)
 # define FEAT_TERMGUICOLORS
 #endif
 
 /*
  * +vartabs		'vartabstop' and 'varsofttabstop' options.
  */
-#ifdef FEAT_BIG
+#ifdef FEAT_HUGE
 # define FEAT_VARTABS
 #endif
 
@@ -854,13 +852,9 @@
 // Amiga console has no mouse support
 #if defined(UNIX) || defined(VMS)
 # define FEAT_MOUSE_XTERM
-# ifdef FEAT_BIG
+# ifdef FEAT_NORMAL
 #  define FEAT_MOUSE_NET
-# endif
-# ifdef FEAT_BIG
 #  define FEAT_MOUSE_DEC
-# endif
-# ifdef FEAT_BIG
 #  define FEAT_MOUSE_URXVT
 # endif
 #endif
@@ -1091,7 +1085,7 @@
  * +signs		Allow signs to be displayed to the left of text lines.
  *			Adds the ":sign" command.
  */
-#if defined(FEAT_BIG) || defined(FEAT_NETBEANS_INTG) || defined(FEAT_PROP_POPUP)
+#if defined(FEAT_NORMAL) || defined(FEAT_NETBEANS_INTG) || defined(FEAT_PROP_POPUP)
 # define FEAT_SIGNS
 # if (defined(FEAT_GUI_MOTIF) && defined(HAVE_X11_XPM_H)) \
 	|| defined(FEAT_GUI_GTK) \
@@ -1149,7 +1143,7 @@
 /*
  * +autochdir		'autochdir' option.
  */
-#if defined(FEAT_NETBEANS_INTG) || defined(FEAT_BIG)
+#if defined(FEAT_NETBEANS_INTG) || defined(FEAT_NORMAL)
 # define FEAT_AUTOCHDIR
 #endif