Browse Source

Generalize the inclusion of strings.h

The header strings.h was formerly only included for HP NonStop (aka
Tandem) to define strcasecmp, but another platform requiring this
inclusion has been found.  The build system will now include the
file based on its presence determined by configure.

Signed-off-by: David Michael <fedora.dm0@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
David Michael 12 years ago committed by Junio C Hamano
parent
commit
b3e103dabe
  1. 7
      Makefile
  2. 6
      configure.ac
  3. 2
      git-compat-util.h

7
Makefile

@ -74,6 +74,8 @@ all::
# Define NO_D_TYPE_IN_DIRENT if your platform defines DT_UNKNOWN but lacks # Define NO_D_TYPE_IN_DIRENT if your platform defines DT_UNKNOWN but lacks
# d_type in struct dirent (Cygwin 1.5, fixed in Cygwin 1.7). # d_type in struct dirent (Cygwin 1.5, fixed in Cygwin 1.7).
# #
# Define HAVE_STRINGS_H if you have strings.h and need it for strcasecmp.
#
# Define NO_STRCASESTR if you don't have strcasestr. # Define NO_STRCASESTR if you don't have strcasestr.
# #
# Define NO_MEMMEM if you don't have memmem. # Define NO_MEMMEM if you don't have memmem.
@ -1350,6 +1352,7 @@ ifeq ($(uname_S),NONSTOP_KERNEL)
# Added manually, see above. # Added manually, see above.
NEEDS_SSL_WITH_CURL = YesPlease NEEDS_SSL_WITH_CURL = YesPlease
HAVE_LIBCHARSET_H = YesPlease HAVE_LIBCHARSET_H = YesPlease
HAVE_STRINGS_H = YesPlease
NEEDS_LIBICONV = YesPlease NEEDS_LIBICONV = YesPlease
NEEDS_LIBINTL_BEFORE_LIBICONV = YesPlease NEEDS_LIBINTL_BEFORE_LIBICONV = YesPlease
NO_SYS_SELECT_H = UnfortunatelyYes NO_SYS_SELECT_H = UnfortunatelyYes
@ -1883,6 +1886,10 @@ ifdef HAVE_LIBCHARSET_H
EXTLIBS += $(CHARSET_LIB) EXTLIBS += $(CHARSET_LIB)
endif endif


ifdef HAVE_STRINGS_H
BASIC_CFLAGS += -DHAVE_STRINGS_H
endif

ifdef HAVE_DEV_TTY ifdef HAVE_DEV_TTY
BASIC_CFLAGS += -DHAVE_DEV_TTY BASIC_CFLAGS += -DHAVE_DEV_TTY
endif endif

6
configure.ac

@ -886,6 +886,12 @@ AC_CHECK_HEADER([libcharset.h],
[HAVE_LIBCHARSET_H=YesPlease], [HAVE_LIBCHARSET_H=YesPlease],
[HAVE_LIBCHARSET_H=]) [HAVE_LIBCHARSET_H=])
GIT_CONF_SUBST([HAVE_LIBCHARSET_H]) GIT_CONF_SUBST([HAVE_LIBCHARSET_H])
#
# Define HAVE_STRINGS_H if you have strings.h
AC_CHECK_HEADER([strings.h],
[HAVE_STRINGS_H=YesPlease],
[HAVE_STRINGS_H=])
GIT_CONF_SUBST([HAVE_STRINGS_H])
# Define CHARSET_LIB if libiconv does not export the locale_charset symbol # Define CHARSET_LIB if libiconv does not export the locale_charset symbol
# and libcharset does # and libcharset does
CHARSET_LIB= CHARSET_LIB=

2
git-compat-util.h

@ -99,7 +99,7 @@
#include <stdlib.h> #include <stdlib.h>
#include <stdarg.h> #include <stdarg.h>
#include <string.h> #include <string.h>
#ifdef __TANDEM /* or HAVE_STRINGS_H or !NO_STRINGS_H? */ #ifdef HAVE_STRINGS_H
#include <strings.h> /* for strcasecmp() */ #include <strings.h> /* for strcasecmp() */
#endif #endif
#include <errno.h> #include <errno.h>

Loading…
Cancel
Save