]> git.eshelyaron.com Git - emacs.git/commitdiff
* configure.ac: New option --disable-features.
authorDmitry Antipov <dmantipov@yandex.ru>
Tue, 7 Aug 2012 04:16:47 +0000 (08:16 +0400)
committerDmitry Antipov <dmantipov@yandex.ru>
Tue, 7 Aug 2012 04:16:47 +0000 (08:16 +0400)
(OPTION_DEFAULT_ON): Change to use enable_features.
* INSTALL: Explain --disable-features.

ChangeLog
INSTALL
configure.ac

index 61e749907c166a17086929a1cdf200c51dab2660..b44b0a95a904a340c15a398d47f9d5818e4404d4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-08-07  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * configure.ac: New option --disable-features.
+       (OPTION_DEFAULT_ON): Change to use enable_features.
+       * INSTALL: Explain --disable-features.
+
 2012-08-07  Glenn Morris  <rgm@gnu.org>
 
        * configure.ac: Require automake 1.11 (fairly arbitrarily).
diff --git a/INSTALL b/INSTALL
index 892ee5e451ddf774fdf1abdaa1e1407c78d8f837..7679a1966e54b3cd6cddf59c32db6d5a421658ea 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -319,6 +319,20 @@ systems which support that.
 
 Use --without-sound to disable sound support.
 
+Use --disable-features if you want to build small executable with
+the minimal dependencies from an external libraries, at the cost
+of disabling most of the features which are enabled by default.
+Using --disable-features is equivalent to --without-sound --without-dbus
+--without-libotf --without-selinux --without-xft --without-gsettings
+--without-gnutls --without-rsvg --without-xml2 --without-gconf
+--without-imagemagick --without-m17n-flt --without-jpeg --without-tiff
+--without-gif --without-png --without-gpm.  Note that --disable-features
+leaves X support enabled, and using GTK2 or GTK3 toolkit creates a lot
+of library dependencies.  So if you want to build small executable with
+the very basic X support, use --disable-features --with-x-toolkit=no.
+For the smallest possible executable without X, use --disable-features
+--without-x.
+
 Use --with-wide-int to implement Emacs values with the type 'long long',
 even on hosts where a narrower type would do.  With this option, on a
 typical 32-bit host, Emacs integers have 62 bits instead of 30.
index 60a262075896b05fa2d777a50235569668d19afb..1741513d05258c4bfed038386ea6f8db4c948f17 100644 (file)
@@ -48,6 +48,14 @@ archlibdir='${libexecdir}/emacs/${version}/${configuration}'
 docdir='${datadir}/emacs/${version}/etc'
 gamedir='${localstatedir}/games/emacs'
 
+dnl Do not omit a lot of the nice features by default.
+AC_ARG_ENABLE(features,
+[AS_HELP_STRING([--disable-features],
+               [omit almost all features and build
+               small executable with minimal dependencies])],
+  enable_features=$enableval,
+  enable_features=yes)
+
 dnl OPTION_DEFAULT_OFF(NAME, HELP-STRING)
 dnl Create a new --with option that defaults to being disabled.
 dnl NAME is the base name of the option.  The shell variable with_NAME
@@ -63,8 +71,8 @@ AC_DEFUN([OPTION_DEFAULT_OFF], [dnl
 ])dnl
 
 dnl OPTION_DEFAULT_ON(NAME, HELP-STRING)
-dnl Create a new --with option that defaults to being enabled.  NAME
-dnl   is the base name of the option.  The shell variable with_NAME
+dnl Create a new --with option that defaults to $enable_features.
+dnl NAME is the base name of the option.  The shell variable with_NAME
 dnl   will be set either to 'no' (for a plain --without-NAME) or to
 dnl   'yes' (if the option is not specified).  Note that the shell
 dnl   variable name is constructed as autoconf does, by replacing
@@ -72,7 +80,7 @@ dnl   non-alphanumeric characters with "_".
 dnl HELP-STRING is the help text for the option.
 AC_DEFUN([OPTION_DEFAULT_ON], [dnl
   AC_ARG_WITH([$1],[AS_HELP_STRING([--without-$1],[$2])],[],[dnl
-   m4_bpatsubst([with_$1], [[^0-9a-z]], [_])=yes])dnl
+   m4_bpatsubst([with_$1], [[^0-9a-z]], [_])=$enable_features])dnl
 ])dnl
 
 OPTION_DEFAULT_ON([pop],[don't support POP mail retrieval with movemail])