[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Nano-devel] [PATCH] clean up autoconf with/enable macros
From: |
Mike Frysinger |
Subject: |
[Nano-devel] [PATCH] clean up autoconf with/enable macros |
Date: |
Sun, 23 Mar 2014 18:03:12 -0400 |
This cleans up most, but not all, of the --with/--enable flags:
- Use AS_HELP_STRING instead of writing the text ourselves
- Use the normal enable_xxx var AC_ARG_ENABLE creates for us
- Delete duplicate checks in a few places (due to previous cleanup)
- Unwrap some macros/var assignments
- Delete trailing whitespace
- Delete old --enable-all flag
- Fix quoting on a lot of vars that come from the user
- Use AC_MSG_* helpers instead of raw `echo`
---
configure.ac | 193 ++++++++++++++++++++++++++---------------------------------
1 file changed, 84 insertions(+), 109 deletions(-)
diff --git a/configure.ac b/configure.ac
index 6f6c7e6..a1f0357 100644
--- a/configure.ac
+++ b/configure.ac
@@ -55,19 +55,21 @@ AC_CHECK_HEADERS(getopt.h libintl.h limits.h regex.h
sys/param.h wchar.h wctype.
dnl Checks for options.
AC_ARG_ENABLE(debug,
-[ --enable-debug Enable debugging (disabled by default)],
-[if test x$enableval = xyes; then
- AC_DEFINE(DEBUG, 1, [Define this to enable debug messages and assert
warnings.]) debug_support=yes
-fi])
+AS_HELP_STRING([--enable-debug], [Enable debugging (disabled by default)]))
+if test "x$enable_debug" = xyes; then
+ AC_DEFINE(DEBUG, 1, [Define this to enable debug messages and assert
warnings.])
+ debug_support=yes
+fi
if test x$debug_support != xyes; then
AC_DEFINE(NDEBUG, 1, [Shut up assert warnings :-)])
fi
AC_ARG_ENABLE(tiny,
-[ --enable-tiny Disable features for the sake of size],
-[if test x$enableval = xyes; then
- AC_DEFINE(NANO_TINY, 1, [Define this to make the nano executable as small
as possible.]) tiny_support=yes
+AS_HELP_STRING([--enable-tiny], [Disable features for the sake of size]))
+if test "x$enable_tiny" = xyes; then
+ AC_DEFINE(NANO_TINY, 1, [Define this to make the nano executable as small
as possible.])
+ tiny_support=yes
AC_DEFINE(DISABLE_BROWSER, 1, [Define this to disable the built-in file
browser.])
AC_DEFINE(DISABLE_HELP, 1, [Define this to disable the help text display.])
AC_DEFINE(DISABLE_JUSTIFY, 1, [Define this to disable the justify
routines.])
@@ -76,141 +78,112 @@ AC_ARG_ENABLE(tiny,
AC_DEFINE(DISABLE_SPELLER, 1, [Define this to disable the spell checker
functions.])
AC_DEFINE(DISABLE_TABCOMP, 1, [Define to disable the tab completion
functions for files and search strings.])
AC_DEFINE(DISABLE_WRAPPING, 1, [Define this to disable all text wrapping.])
-fi])
+fi
AC_ARG_ENABLE(libmagic,
AS_HELP_STRING([--disable-libmagic], [Disable detection of file types via
libmagic]))
AC_ARG_ENABLE(extra,
-[ --disable-extra Disable extra features, currently only easter
eggs],
-[if test x$enableval != xno; then
- AC_DEFINE(NANO_EXTRA, 1, [Define this to enable extra stuff.])
extra_support=yes
-fi],
- [if test x$enable_tiny != xyes; then
- AC_DEFINE(NANO_EXTRA, 1, [Define this to enable extra stuff.])
extra_support=yes
- fi])
+AS_HELP_STRING([--disable-extra], [Disable extra features, currently only
easter eggs]))
+if test "x$enable_extra" != xno; then
+ AC_DEFINE(NANO_EXTRA, 1, [Define this to enable extra stuff.])
+ extra_support=yes
+fi
AC_ARG_ENABLE(browser,
-[ --disable-browser Disable built-in file browser],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-browser], [Disable built-in file browser]))
+if test "x$enable_browser" = xno; then
AC_DEFINE(DISABLE_BROWSER, 1, [Define this to disable the built-in file
browser.])
-fi])
+fi
AC_ARG_ENABLE(help,
-[ --disable-help Disable help functions],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-help], [Disable help functions]))
+if test "x$enable_help" = xno; then
AC_DEFINE(DISABLE_HELP, 1, [Define this to disable the help text display.])
-fi])
+fi
AC_ARG_ENABLE(justify,
-[ --disable-justify Disable justify/unjustify functions],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-justify], [Disable justify/unjustify functions]))
+if test "x$enable_justify" = xno; then
AC_DEFINE(DISABLE_JUSTIFY, 1, [Define this to disable the justify
routines.])
-fi])
+fi
AC_ARG_ENABLE(mouse,
-[ --disable-mouse Disable mouse support (and -m flag)],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-mouse], [Disable mouse support (and -m flag)]))
+if test "x$enable_mouse" = xno; then
AC_DEFINE(DISABLE_MOUSE, 1, [Define this to disable the mouse support.])
-fi])
+fi
AC_ARG_ENABLE(operatingdir,
-[ --disable-operatingdir Disable setting of operating directory (chroot of
sorts)],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-operatingdir], [Disable setting of operating
directory (chroot of sorts)]))
+if test "x$enable_operatingdir" = xno; then
AC_DEFINE(DISABLE_OPERATINGDIR, 1, [Define this to disable the setting of
the operating directory (chroot of sorts).])
-fi])
+fi
AC_ARG_ENABLE(speller,
-[ --disable-speller Disable spell checker functions],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-speller], [Disable spell checker functions]))
+if test "x$enable_speller" = xno; then
AC_DEFINE(DISABLE_SPELLER, 1, [Define this to disable the spell checker
functions.])
-fi])
+fi
AC_ARG_ENABLE(tabcomp,
-[ --disable-tabcomp Disable tab completion functions],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-tabcomp], [Disable tab completion functions]))
+if test "x$enable_tabcomp" = xno; then
AC_DEFINE(DISABLE_TABCOMP, 1, [Define to disable the tab completion
functions for files and search strings.])
-fi])
+fi
AC_ARG_ENABLE(wrapping,
-[ --disable-wrapping Disable all wrapping of text (and -w flag)],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-wrapping], [Disable all wrapping of text (and -w
flag)]))
+if test "x$enable_wrapping" = xno; then
AC_DEFINE(DISABLE_WRAPPING, 1, [Define this to disable all text wrapping.])
-fi])
+fi
AC_ARG_ENABLE(wrapping-as-root,
-[ --disable-wrapping-as-root Disable wrapping of text as root by default],
-[if test x$enableval != xyes; then
+AS_HELP_STRING([--disable-wrapping-as-root], [Disable wrapping of text as root
by default]))
+if test "x$enable_wrapping_as_root" = xno; then
AC_DEFINE(DISABLE_ROOTWRAPPING, 1, [Define this to disable text wrapping
as root by default.])
-fi])
+fi
AC_ARG_ENABLE(color,
-[ --disable-color Disable color and syntax highlighting],
-if test x$enableval != xno; then
+AS_HELP_STRING([--disable-color], [Disable color and syntax highlighting]))
+if test "x$enable_color" != xno; then
if test x$ac_cv_header_regex_h = xyes; then
- AC_DEFINE(ENABLE_NANORC, 1, [Define this to use .nanorc files.])
nanorc_support=yes
- AC_DEFINE(ENABLE_COLOR, 1, [Define this to have syntax highlighting,
requires regex.h and ENABLE_NANORC too!]) color_support=yes
- else
+ AC_DEFINE(ENABLE_NANORC, 1, [Define this to use .nanorc files.])
+ nanorc_support=yes
+ AC_DEFINE(ENABLE_COLOR, 1, [Define this to have syntax highlighting,
requires regex.h and ENABLE_NANORC too!])
+ color_support=yes
+ elif test "x$enable_color" = xyes; then
AC_MSG_ERROR([
*** The header file regex.h was not found. If you wish to use color
*** support this header file is required. Please either install C
*** libraries that include the regex.h file or call the configure
*** script with --disable-color.])
fi
-fi,
- if test x$enable_tiny != xyes; then
- if test x$ac_cv_header_regex_h = xyes; then
- AC_DEFINE(ENABLE_NANORC, 1, [Define this to use .nanorc files.])
nanorc_support=yes
- AC_DEFINE(ENABLE_COLOR, 1, [Define this to have syntax
highlighting, requires regex.h and ENABLE_NANORC too!]) color_support=yes
- else
- AC_MSG_ERROR([
-*** The header file regex.h was not found. If you wish to use color
-*** support this header file is required. Please either install C
-*** libraries that include the regex.h file or call the configure
-*** script with --disable-color.])
- fi
- fi
-)
+fi
AC_ARG_ENABLE(multibuffer,
-[ --disable-multibuffer Disable multiple file buffers],
-[if test x$enableval != xno; then
- AC_DEFINE(ENABLE_MULTIBUFFER, 1, [Define this to enable multiple file
buffers.]) multibuffer_support=yes
-fi],
- [if test x$enable_tiny != xyes; then
- AC_DEFINE(ENABLE_MULTIBUFFER, 1, [Define this to enable multiple file
buffers.]) multibuffer_support=yes
- fi])
+AS_HELP_STRING([--disable-multibuffer], [Disable multiple file buffers]))
+if test "x$enable_multibuffer" != xno; then
+ AC_DEFINE(ENABLE_MULTIBUFFER, 1, [Define this to enable multiple file
buffers.])
+ multibuffer_support=yes
+fi
AC_ARG_ENABLE(nanorc,
-[ --disable-nanorc Disable use of .nanorc files],
-[if test x$enableval != xno; then
- AC_DEFINE(ENABLE_NANORC, 1, [Define this to use .nanorc files.])
nanorc_support=yes
-fi],
- [if test x$enable_tiny != xyes; then
- AC_DEFINE(ENABLE_NANORC, 1, [Define this to use .nanorc files.])
nanorc_support=yes
- fi])
-
-AC_ARG_ENABLE(all,
-[ --enable-all Enable ALL extra nano functionality (ignored for
compatibility as all options default to on)],
-[if test x$enableval = xyes; then
- echo "--enable-all option no longer needed, ignoring for compatibility"
-fi])
+AS_HELP_STRING([--disable-nanorc], [Disable use of .nanorc files]))
+if test "x$enable_nanorc" != xno; then
+ AC_DEFINE(ENABLE_NANORC, 1, [Define this to use .nanorc files.])
+ nanorc_support=yes
+fi
AC_MSG_CHECKING([whether to enable UTF-8 support])
-AC_ARG_ENABLE(utf8,
-[ --enable-utf8 Enable UTF-8 support],
-[if test x$enableval = xyes; then
- enable_utf8=yes
-else
- enable_utf8=no
-fi],
-[enable_utf8=auto])
+enable_utf8=auto
+AC_ARG_ENABLE(utf8, AS_HELP_STRING([--enable-utf8], [Enable UTF-8 support]))
AC_MSG_RESULT($enable_utf8)
AC_MSG_CHECKING([whether to use slang])
CURSES_LIB_NAME=""
AC_ARG_WITH(slang,
-[ --with-slang[=DIR] Use the slang library instead of curses],
+AS_HELP_STRING([--with-slang[=DIR]], [Use the slang library instead of
curses]),
[ case "$with_slang" in
no)
AC_MSG_RESULT(no)
@@ -224,7 +197,7 @@ AC_ARG_WITH(slang,
CPPFLAGS="-I$with_slang/include $CPPFLAGS"
fi
- if test x$enable_utf8 != xno; then
+ if test "x$enable_utf8" != xno; then
AC_CHECK_HEADER(slcurses.h,
AC_MSG_CHECKING([for SLutf8_enable in -lslang])
_libs=$LIBS
@@ -237,7 +210,8 @@ int main(void)
return 0;
}],
[AC_MSG_RESULT(yes)
- AC_DEFINE(USE_SLANG, 1, [Define to use the slang wrappers
for curses instead of native curses.]) slang_support=yes
+ AC_DEFINE(USE_SLANG, 1, [Define to use the slang wrappers
for curses instead of native curses.])
+ slang_support=yes
CURSES_LIB_WIDE=yes
if test x$with_slang != xyes; then
CURSES_LIB="-L${with_slang}/lib -lslang"
@@ -305,7 +279,7 @@ int main(void)
if eval "test x$CURSES_LIB_NAME = x"; then
# Reset libs if the above slang tests failed
- if test x$enable_utf8 != xno; then
+ if test "x$enable_utf8" != xno; then
LIBS=$_libs
fi
@@ -395,7 +369,8 @@ int main(void)
esac], [AC_MSG_RESULT(no)])
if test x$CURSES_LIB_NAME = xslang; then
- AC_DEFINE(NANO_TINY, 1, [Define this to make the nano executable as small
as possible.]) tiny_support=yes
+ AC_DEFINE(NANO_TINY, 1, [Define this to make the nano executable as small
as possible.])
+ tiny_support=yes
AC_DEFINE(DISABLE_BROWSER, 1, [Define this to disable the built-in file
browser.])
AC_DEFINE(DISABLE_HELP, 1, [Define this to disable the help text display.])
AC_DEFINE(DISABLE_JUSTIFY, 1, [Define this to disable the justify
routines.])
@@ -410,7 +385,7 @@ AM_CONDITIONAL(USE_COLOR, test x$color_support = xyes)
AM_CONDITIONAL(USE_NANORC, test x$nanorc_support = xyes)
AC_ARG_ENABLE(altrcname,
-[ --enable-altrcname Specify alternate rcfile name (default:
.nanorc)],
+AS_HELP_STRING([--enable-altrcname], [Specify alternate rcfile name (default:
.nanorc)]),
[if test x$enableval != no; then
AC_DEFINE_UNQUOTED(RCFILE_NAME, "$enableval", [Specify alternate rcfile
name (default: .nanorc)]) rcfilename=$enableval
fi])
@@ -419,7 +394,7 @@ dnl Checks for functions.
AC_CHECK_FUNCS(getdelim getline isblank strcasecmp strcasestr strncasecmp
strnlen vsnprintf)
-if test x$enable_utf8 != xno; then
+if test "x$enable_utf8" != xno; then
AC_CHECK_FUNCS(iswalnum iswblank iswpunct iswspace nl_langinfo mblen
mbstowcs mbtowc wctomb wcwidth)
fi
@@ -444,7 +419,7 @@ AC_CHECK_FUNCS(getopt_long)
dnl Checks for libraries.
if eval "test x$CURSES_LIB_NAME = x"; then
- if test x$enable_utf8 != xno; then
+ if test "x$enable_utf8" != xno; then
PKG_CHECK_MODULES([NCURSESW], [ncursesw], [
CURSES_LIB=$NCURSESW_LIBS
CPPFLAGS="$NCURSESW_CFLAGS $CPPFLAGS"
@@ -463,7 +438,7 @@ fi
if eval "test x$CURSES_LIB_NAME = x"; then
AC_CHECK_HEADERS(ncurses.h)
- if test x$enable_utf8 != xno; then
+ if test "x$enable_utf8" != xno; then
OLDLIBS="$LIBS"
AC_CHECK_TOOL(NCURSESW_CONFIG, ncursesw5-config, no)
if test "x$NCURSESW_CONFIG" != xno; then
@@ -485,7 +460,7 @@ fi
if eval "test x$CURSES_LIB_NAME = x"; then
AC_CHECK_HEADERS(curses.h)
- if test x$enable_utf8 != xno; then
+ if test "x$enable_utf8" != xno; then
AC_CHECK_LIB(curses, get_wch, [CURSES_LIB="-lcurses"
CURSES_LIB_NAME=curses CURSES_LIB_WIDE=yes])
fi
@@ -518,7 +493,7 @@ if test "x$GLIB_LIBS" != "x"; then
LDFLAGS="$LDFLAGS $GLIB_LIBS"
fi
-if test x$enable_utf8 != xno && \
+if test "x$enable_utf8" != xno && \
test x$CURSES_LIB_WIDE = xyes && \
test x$ac_cv_func_iswalnum = xyes && \
test x$ac_cv_func_iswpunct = xyes && \
@@ -531,14 +506,14 @@ if test x$enable_utf8 != xno && \
test x$ac_cv_func_wcwidth = xyes; then
AC_DEFINE(ENABLE_UTF8, 1, [Define this if your system has sufficient
UTF-8 support (a wide curses library, iswalnum(), iswpunct(), iswblank() or
iswspace(), nl_langinfo, mblen(), mbstowcs(), mbtowc(), wctomb(), and
wcwidth()).])
else
- if test x$enable_utf8 = xyes; then
+ if test "x$enable_utf8" = xyes; then
AC_MSG_ERROR([
*** UTF-8 support was requested, but insufficient UTF-8 support was
*** detected in your curses and/or C libraries. Please verify that your
*** slang was built with UTF-8 support or your curses was built with
*** wide character support, and that your C library was built with wide
*** character support.])
- elif test x$enable_utf8 != xno; then
+ elif test "x$enable_utf8" != xno; then
AC_MSG_WARN([
*** Insufficient UTF-8 support was detected in your curses and/or C
*** libraries. If you want UTF-8 support, please verify that your slang
@@ -553,7 +528,7 @@ if test x$color_support = xyes; then
AC_MSG_CHECKING([for GNU-style word boundary regex support])
AC_ARG_WITH(wordbounds,
- [ --with-wordbounds Use GNU-style word boundary
delimiters],
+ AS_HELP_STRING([--with-wordbounds], [Use GNU-style word boundary
delimiters]),
[ case "$with_wordbounds" in
no)
AC_MSG_RESULT(no)
@@ -626,7 +601,7 @@ int main(void)
LINES = 80;
COLS = 25;
return 0;
-}],
+}],
AC_DEFINE(REDEFINIG_MACROS_OK, 1, [Define this if you know your curses library
allows LINES and COLS to be redefined to deal with a resizing bug])
AC_MSG_RESULT(yes),
AC_MSG_RESULT(no),
@@ -640,13 +615,13 @@ AS_IF([test "x$enable_libmagic" != "xno"], [
# Check for groff html support
AC_MSG_CHECKING([for HTML support in groff])
groff -t -mandoc -Thtml </dev/null >/dev/null
-if test $? -ne 0 ; then
- echo "no"
- echo "*** Will not generate HTML version of man pages ***"
- echo "*** Consider installing a newer version of groff with HTML support
***"
+if test $? -ne 0 ; then
+ AC_MSG_RESULT([no])
+ AC_MSG_WARN([*** Will not generate HTML version of man pages ***
+*** Consider installing a newer version of groff with HTML support ***])
groff_html_support=no
else
- echo "yes"
+ AC_MSG_RESULT([yes])
groff_html_support=yes
fi
AM_CONDITIONAL(GROFF_HTML, test x$groff_html_support = xyes)
--
1.9.0
- [Nano-devel] [PATCH] clean up autoconf with/enable macros,
Mike Frysinger <=