[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Nano-devel] [PATCH 6/8] assume getopt_long support is always available
From: |
Mike Frysinger |
Subject: |
[Nano-devel] [PATCH 6/8] assume getopt_long support is always available |
Date: |
Sat, 6 Feb 2016 19:03:59 -0500 |
Now that we pull in the gnulib getopt-gnu module, we can assume it exists.
---
autogen.sh | 1 +
configure.ac | 3 +--
src/nano.c | 34 +++-------------------------------
src/proto.h | 6 +-----
4 files changed, 6 insertions(+), 38 deletions(-)
diff --git a/autogen.sh b/autogen.sh
index ecc134e..0b63f71 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -4,6 +4,7 @@
modules="
getdelim
getline
+ getopt-gnu
isblank
iswblank
regex
diff --git a/configure.ac b/configure.ac
index 0da4150..2153ea9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -58,7 +58,7 @@ AC_DEFINE_DIR([PKGDATADIR], [pkgdatadir], [Where data are
placed to.])
dnl Checks for header files.
-AC_CHECK_HEADERS(getopt.h libintl.h limits.h sys/param.h wchar.h wctype.h
stdarg.h)
+AC_CHECK_HEADERS(libintl.h limits.h sys/param.h wchar.h wctype.h stdarg.h)
dnl Checks for options.
@@ -460,7 +460,6 @@ dnl Checks for library functions.
AC_TYPE_SIGNAL
AC_FUNC_VPRINTF
-AC_CHECK_FUNCS(getopt_long)
dnl Checks for libraries.
diff --git a/src/nano.c b/src/nano.c
index 6dcfc91..6107dbc 100644
--- a/src/nano.c
+++ b/src/nano.c
@@ -35,9 +35,7 @@
#include <langinfo.h>
#endif
#include <termios.h>
-#ifdef HAVE_GETOPT_H
#include <getopt.h>
-#endif
#ifndef NANO_TINY
#include <sys/ioctl.h>
#endif
@@ -799,32 +797,20 @@ void mouse_init(void)
}
#endif /* !DISABLE_MOUSE */
-#ifdef HAVE_GETOPT_LONG
-#define print_opt(shortflag, longflag, desc) print_opt_full(shortflag,
longflag, desc)
-#else
-#define print_opt(shortflag, longflag, desc) print_opt_full(shortflag, desc)
-#endif
-
/* Print one usage string to the screen. This cuts down on duplicate
* strings to translate, and leaves out the parts that shouldn't be
* translatable (i.e. the flag names). */
-void print_opt_full(const char *shortflag
-#ifdef HAVE_GETOPT_LONG
- , const char *longflag
-#endif
- , const char *desc)
+void print_opt(const char *shortflag, const char *longflag, const char *desc)
{
printf(" %s\t", shortflag);
if (strlenpt(shortflag) < 8)
printf("\t");
-#ifdef HAVE_GETOPT_LONG
printf("%s\t", longflag);
if (strlenpt(longflag) < 8)
printf("\t\t");
else if (strlenpt(longflag) < 16)
printf("\t");
-#endif
if (desc != NULL)
printf("%s", _(desc));
@@ -835,13 +821,7 @@ void print_opt_full(const char *shortflag
void usage(void)
{
printf(_("Usage: nano [OPTIONS] [[+LINE,COLUMN] FILE]...\n\n"));
- printf(
-#ifdef HAVE_GETOPT_LONG
- _("Option\t\tGNU long option\t\tMeaning\n")
-#else
- _("Option\t\tMeaning\n")
-#endif
- );
+ printf(_("Option\t\tGNU long option\t\tMeaning\n"));
print_opt(_("+LINE,COLUMN"), "",
/* TRANSLATORS: The next forty or so strings are option descriptions
* for the --help output. Try to keep them at most 40 characters. */
@@ -1981,7 +1961,6 @@ int main(int argc, char **argv)
/* The old value of the multibuffer option, restored after we
* load all files on the command line. */
#endif
-#ifdef HAVE_GETOPT_LONG
const struct option long_options[] = {
{"boldtext", 0, NULL, 'D'},
#ifndef DISABLE_MULTIBUFFER
@@ -2047,7 +2026,6 @@ int main(int argc, char **argv)
#endif
{NULL, 0, NULL, 0}
};
-#endif
#ifdef ENABLE_UTF8
{
@@ -2080,15 +2058,9 @@ int main(int argc, char **argv)
#endif
while ((optchr =
-#ifdef HAVE_GETOPT_LONG
getopt_long(argc, argv,
"ABC:DEFGHIKLNOPQ:RST:UVWY:abcdefghijklmno:pqr:s:tuvwxz$",
- long_options, NULL)
-#else
- getopt(argc, argv,
- "ABC:DEFGHIKLNOPQ:RST:UVWY:abcdefghijklmno:pqr:s:tuvwxz$")
-#endif
- ) != -1) {
+ long_options, NULL)) != -1) {
switch (optchr) {
case 'a':
case 'b':
diff --git a/src/proto.h b/src/proto.h
index 8fcc754..ce46b48 100644
--- a/src/proto.h
+++ b/src/proto.h
@@ -448,11 +448,7 @@ void disable_mouse_support(void);
void enable_mouse_support(void);
void mouse_init(void);
#endif
-void print_opt_full(const char *shortflag
-#ifdef HAVE_GETOPT_LONG
- , const char *longflag
-#endif
- , const char *desc);
+void print_opt(const char *shortflag, const char *longflag, const char *desc);
void usage(void);
void version(void);
int more_space(void);
--
2.6.2
- [Nano-devel] [PATCH 1/8] add support for gnulib, Mike Frysinger, 2016/02/06
- [Nano-devel] [PATCH 8/8] drop wchar.h/wctype.h/stdarg.h checks, Mike Frysinger, 2016/02/06
- [Nano-devel] [PATCH 6/8] assume getopt_long support is always available,
Mike Frysinger <=
- [Nano-devel] [PATCH 3/8] drop getdelim/getline fallback functions, Mike Frysinger, 2016/02/06
- [Nano-devel] [PATCH 4/8] drop isblank/iswblank fallback functions, Mike Frysinger, 2016/02/06
- [Nano-devel] [PATCH 5/8] assume regex.h support is always available, Mike Frysinger, 2016/02/06
- [Nano-devel] [PATCH 2/8] drop various str fallback functions, Mike Frysinger, 2016/02/06
- [Nano-devel] [PATCH 7/8] drop glib fallback for snprintf/vsnprintf, Mike Frysinger, 2016/02/06
- Re: [Nano-devel] [PATCH 1/8] add support for gnulib, Mike Frysinger, 2016/02/06