Merge branch 'cw/maint-exec-defpath' into maint

* cw/maint-exec-defpath:
  autoconf: Check if <paths.h> exists and set HAVE_PATHS_H
  exec_cmd.c: replace hard-coded path list with one from <paths.h>
maint
Junio C Hamano 2010-06-16 16:33:47 -07:00
commit 7e74a73e6b
5 changed files with 28 additions and 1 deletions

View File

@ -31,6 +31,9 @@ all::
# Define EXPATDIR=/foo/bar if your expat header and library files are in # Define EXPATDIR=/foo/bar if your expat header and library files are in
# /foo/bar/include and /foo/bar/lib directories. # /foo/bar/include and /foo/bar/lib directories.
# #
# Define HAVE_PATHS_H if you have paths.h and want to use the default PATH
# it specifies.
#
# Define NO_D_INO_IN_DIRENT if you don't have d_ino in your struct dirent. # Define NO_D_INO_IN_DIRENT if you don't have d_ino in your struct dirent.
# #
# 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
@ -735,10 +738,12 @@ EXTLIBS =
ifeq ($(uname_S),Linux) ifeq ($(uname_S),Linux)
NO_STRLCPY = YesPlease NO_STRLCPY = YesPlease
NO_MKSTEMPS = YesPlease NO_MKSTEMPS = YesPlease
HAVE_PATHS_H = YesPlease
endif endif
ifeq ($(uname_S),GNU/kFreeBSD) ifeq ($(uname_S),GNU/kFreeBSD)
NO_STRLCPY = YesPlease NO_STRLCPY = YesPlease
NO_MKSTEMPS = YesPlease NO_MKSTEMPS = YesPlease
HAVE_PATHS_H = YesPlease
endif endif
ifeq ($(uname_S),UnixWare) ifeq ($(uname_S),UnixWare)
CC = cc CC = cc
@ -867,6 +872,7 @@ ifeq ($(uname_S),FreeBSD)
NO_STRTOUMAX = YesPlease NO_STRTOUMAX = YesPlease
endif endif
PYTHON_PATH = /usr/local/bin/python PYTHON_PATH = /usr/local/bin/python
HAVE_PATHS_H = YesPlease
endif endif
ifeq ($(uname_S),OpenBSD) ifeq ($(uname_S),OpenBSD)
NO_STRCASESTR = YesPlease NO_STRCASESTR = YesPlease
@ -875,6 +881,7 @@ ifeq ($(uname_S),OpenBSD)
NEEDS_LIBICONV = YesPlease NEEDS_LIBICONV = YesPlease
BASIC_CFLAGS += -I/usr/local/include BASIC_CFLAGS += -I/usr/local/include
BASIC_LDFLAGS += -L/usr/local/lib BASIC_LDFLAGS += -L/usr/local/lib
HAVE_PATHS_H = YesPlease
endif endif
ifeq ($(uname_S),NetBSD) ifeq ($(uname_S),NetBSD)
ifeq ($(shell expr "$(uname_R)" : '[01]\.'),2) ifeq ($(shell expr "$(uname_R)" : '[01]\.'),2)
@ -884,6 +891,7 @@ ifeq ($(uname_S),NetBSD)
BASIC_LDFLAGS += -L/usr/pkg/lib $(CC_LD_DYNPATH)/usr/pkg/lib BASIC_LDFLAGS += -L/usr/pkg/lib $(CC_LD_DYNPATH)/usr/pkg/lib
USE_ST_TIMESPEC = YesPlease USE_ST_TIMESPEC = YesPlease
NO_MKSTEMPS = YesPlease NO_MKSTEMPS = YesPlease
HAVE_PATHS_H = YesPlease
endif endif
ifeq ($(uname_S),AIX) ifeq ($(uname_S),AIX)
DEFAULT_PAGER = more DEFAULT_PAGER = more
@ -905,6 +913,7 @@ ifeq ($(uname_S),GNU)
# GNU/Hurd # GNU/Hurd
NO_STRLCPY=YesPlease NO_STRLCPY=YesPlease
NO_MKSTEMPS = YesPlease NO_MKSTEMPS = YesPlease
HAVE_PATHS_H = YesPlease
endif endif
ifeq ($(uname_S),IRIX) ifeq ($(uname_S),IRIX)
NO_SETENV = YesPlease NO_SETENV = YesPlease
@ -1354,6 +1363,10 @@ else
LIB_OBJS += thread-utils.o LIB_OBJS += thread-utils.o
endif endif


ifdef HAVE_PATHS_H
BASIC_CFLAGS += -DHAVE_PATHS_H
endif

ifdef DIR_HAS_BSD_GROUP_SEMANTICS ifdef DIR_HAS_BSD_GROUP_SEMANTICS
COMPAT_CFLAGS += -DDIR_HAS_BSD_GROUP_SEMANTICS COMPAT_CFLAGS += -DDIR_HAS_BSD_GROUP_SEMANTICS
endif endif

View File

@ -31,6 +31,7 @@ NO_OPENSSL=@NO_OPENSSL@
NO_CURL=@NO_CURL@ NO_CURL=@NO_CURL@
NO_EXPAT=@NO_EXPAT@ NO_EXPAT=@NO_EXPAT@
NO_LIBGEN_H=@NO_LIBGEN_H@ NO_LIBGEN_H=@NO_LIBGEN_H@
HAVE_PATHS_H=@HAVE_PATHS_H@
NEEDS_LIBICONV=@NEEDS_LIBICONV@ NEEDS_LIBICONV=@NEEDS_LIBICONV@
NEEDS_SOCKET=@NEEDS_SOCKET@ NEEDS_SOCKET=@NEEDS_SOCKET@
NEEDS_RESOLV=@NEEDS_RESOLV@ NEEDS_RESOLV=@NEEDS_RESOLV@

View File

@ -724,6 +724,12 @@ AC_CHECK_HEADER([libgen.h],
[NO_LIBGEN_H=YesPlease]) [NO_LIBGEN_H=YesPlease])
AC_SUBST(NO_LIBGEN_H) AC_SUBST(NO_LIBGEN_H)
# #
# Define HAVE_PATHS_H if you have paths.h.
AC_CHECK_HEADER([paths.h],
[HAVE_PATHS_H=YesPlease],
[HAVE_PATHS_H=])
AC_SUBST(HAVE_PATHS_H)
#
# Define NO_STRCASESTR if you don't have strcasestr. # Define NO_STRCASESTR if you don't have strcasestr.
GIT_CHECK_FUNC(strcasestr, GIT_CHECK_FUNC(strcasestr,
[NO_STRCASESTR=], [NO_STRCASESTR=],

View File

@ -107,7 +107,7 @@ void setup_path(void)
if (old_path) if (old_path)
strbuf_addstr(&new_path, old_path); strbuf_addstr(&new_path, old_path);
else else
strbuf_addstr(&new_path, "/usr/local/bin:/usr/bin:/bin"); strbuf_addstr(&new_path, _PATH_DEFPATH);


setenv("PATH", new_path.buf, 1); setenv("PATH", new_path.buf, 1);



View File

@ -164,6 +164,13 @@ extern char *gitbasename(char *);
#define PATH_SEP ':' #define PATH_SEP ':'
#endif #endif


#ifdef HAVE_PATHS_H
#include <paths.h>
#endif
#ifndef _PATH_DEFPATH
#define _PATH_DEFPATH "/usr/local/bin:/usr/bin:/bin"
#endif

#ifndef STRIP_EXTENSION #ifndef STRIP_EXTENSION
#define STRIP_EXTENSION "" #define STRIP_EXTENSION ""
#endif #endif