Check for getopt in the configure script, as we do for other routines

not available on all platforms.  Include getopt.c in
EXTRA_ethereal_SOURCES and include getopt.h in EXTRA_ethereal_INCLUDES,
as we do with the other files that supply routines not available on all
platforms, rather than always including them in the source for dumpcap.

svn path=/trunk/; revision=17311
This commit is contained in:
Guy Harris 2006-02-15 19:20:36 +00:00
parent 1ee7aa4476
commit 3442ed9e32
3 changed files with 18 additions and 7 deletions

View File

@ -268,7 +268,7 @@ endif # HAVE_PLUGINS
# we should probably split this into stuff needed both
# by ethereal and tethereal and stuff needed only by one or the
# other.
ethereal_optional_objects = @SNPRINTF_O@ @STRERROR_O@ \
ethereal_optional_objects = @GETOPT_O@ @SNPRINTF_O@ @STRERROR_O@ \
@STRCASECMP_O@ @STRNCASECMP_O@ @MKSTEMP_O@ @STRPTIME_O@
# Additional libs that I know how to build. These will be
@ -565,8 +565,6 @@ EXTRA_DIST = \
ethereal_be.py \
ethereal_gen.py \
ethereal.desktop \
getopt.c \
getopt.h \
idl2eth.sh \
image/Ethereal.icns \
image/Makefile.nmake \

View File

@ -116,19 +116,21 @@ TETHEREAL_TAP_SRC = \
# helpers already available on some platforms (and on others not)
EXTRA_ethereal_SOURCES = \
getopt.c \
mkstemp.c \
snprintf.c \
strerror.c \
strcasecmp.c \
strncasecmp.c \
mkstemp.c \
strptime.c
# corresponding headers
EXTRA_ethereal_INCLUDES = \
getopt.h \
mkstemp.h \
snprintf.h \
snprintf-imp.h \
strerror.h \
mkstemp.h \
strptime.h
# ethereal specifics
@ -218,7 +220,6 @@ dumpcap_SOURCES = \
clopts_common.c \
conditions.c \
dumpcap.c \
getopt.c \
ringbuffer.c \
tempfile.c \
version_info.c
@ -229,4 +230,3 @@ noinst_HEADERS = \
$(ETHEREAL_COMMON_INCLUDES) \
$(ethereal_INCLUDES) \
$(EXTRA_ethereal_INCLUDES)

View File

@ -1033,6 +1033,19 @@ AC_C_BIGENDIAN
# XXX - do we need this?
AC_PROG_GCC_TRADITIONAL
GETOPT_C=""
GETOPT_O=""
AC_CHECK_FUNC(getopt, GETOPT_O="",
[GETOPT_O="getopt.o"
AC_DEFINE(NEED_GETOPT_H, 1, [Define if getopt.h needs to be included])
])
if test "$ac_cv_func_getopt" = no ; then
GETOPT_C="getopt.c"
GETOPT_O="getopt.o"
fi
AC_SUBST(GETOPT_C)
AC_SUBST(GETOPT_O)
# If there's a system out there that has snprintf and _doesn't_ have vsnprintf,
# then this won't work.
SNPRINTF_C=""