From: Junio C Hamano Date: Wed, 3 Jun 2009 07:50:05 +0000 (-0700) Subject: Merge branch 'da/pretty-tempname' X-Git-Tag: v1.6.4-rc0~87 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/b11cf09043f18b368ec0d988f064ea21247c843d?ds=inline;hp=-c Merge branch 'da/pretty-tempname' * da/pretty-tempname: diff: generate pretty filenames in prep_temp_blob() compat: add a basename() compatibility function compat: add a mkstemps() compatibility function Conflicts: Makefile --- b11cf09043f18b368ec0d988f064ea21247c843d diff --combined Makefile index 0ab1cff30d,a59f10687b..06c39e449d --- a/Makefile +++ b/Makefile @@@ -52,6 -52,10 +52,10 @@@ all: # # Define NO_MKDTEMP if you don't have mkdtemp in the C library. # + # Define NO_MKSTEMPS if you don't have mkstemps in the C library. + # + # Define NO_LIBGEN_H if you don't have libgen.h. + # # Define NO_SYS_SELECT_H if you don't have sys/select.h. # # Define NO_SYMLINK_HEAD if you never want .git/HEAD to be a symbolic link. @@@ -336,6 -340,7 +340,6 @@@ PROGRAMS += git-index-pack$ PROGRAMS += git-merge-index$X PROGRAMS += git-merge-tree$X PROGRAMS += git-mktag$X -PROGRAMS += git-mktree$X PROGRAMS += git-pack-redundant$X PROGRAMS += git-patch-id$X PROGRAMS += git-shell$X @@@ -589,7 -594,6 +593,7 @@@ BUILTIN_OBJS += builtin-merge-base. BUILTIN_OBJS += builtin-merge-file.o BUILTIN_OBJS += builtin-merge-ours.o BUILTIN_OBJS += builtin-merge-recursive.o +BUILTIN_OBJS += builtin-mktree.o BUILTIN_OBJS += builtin-mv.o BUILTIN_OBJS += builtin-name-rev.o BUILTIN_OBJS += builtin-pack-objects.o @@@ -636,10 -640,12 +640,12 @@@ EXTLIBS ifeq ($(uname_S),Linux) NO_STRLCPY = YesPlease + NO_MKSTEMPS = YesPlease THREADED_DELTA_SEARCH = YesPlease endif ifeq ($(uname_S),GNU/kFreeBSD) NO_STRLCPY = YesPlease + NO_MKSTEMPS = YesPlease THREADED_DELTA_SEARCH = YesPlease endif ifeq ($(uname_S),UnixWare) @@@ -651,6 -657,7 +657,7 @@@ SHELL_PATH = /usr/local/bin/bash NO_IPV6 = YesPlease NO_HSTRERROR = YesPlease + NO_MKSTEMPS = YesPlease BASIC_CFLAGS += -Kthread BASIC_CFLAGS += -I/usr/local/include BASIC_LDFLAGS += -L/usr/local/lib @@@ -674,6 -681,7 +681,7 @@@ ifeq ($(uname_S),SCO_SV SHELL_PATH = /usr/bin/bash NO_IPV6 = YesPlease NO_HSTRERROR = YesPlease + NO_MKSTEMPS = YesPlease BASIC_CFLAGS += -I/usr/local/include BASIC_LDFLAGS += -L/usr/local/lib NO_STRCASESTR = YesPlease @@@ -702,9 -710,8 +710,10 @@@ ifeq ($(uname_S),SunOS NO_MEMMEM = YesPlease NO_HSTRERROR = YesPlease NO_MKDTEMP = YesPlease + NO_MKSTEMPS = YesPlease - OLD_ICONV = UnfortunatelyYes + ifneq ($(uname_R),5.11) + OLD_ICONV = UnfortunatelyYes + endif ifeq ($(uname_R),5.8) NO_UNSETENV = YesPlease NO_SETENV = YesPlease @@@ -726,6 -733,7 +735,7 @@@ ifeq ($(uname_O),Cygwin NO_D_INO_IN_DIRENT = YesPlease NO_STRCASESTR = YesPlease NO_MEMMEM = YesPlease + NO_MKSTEMPS = YesPlease NO_SYMLINK_HEAD = YesPlease NEEDS_LIBICONV = YesPlease NO_FAST_WORKING_DIRECTORY = UnfortunatelyYes @@@ -769,11 -777,13 +779,13 @@@ ifeq ($(uname_S),NetBSD BASIC_LDFLAGS += -L/usr/pkg/lib $(CC_LD_DYNPATH)/usr/pkg/lib THREADED_DELTA_SEARCH = YesPlease USE_ST_TIMESPEC = YesPlease + NO_MKSTEMPS = YesPlease endif ifeq ($(uname_S),AIX) NO_STRCASESTR=YesPlease NO_MEMMEM = YesPlease NO_MKDTEMP = YesPlease + NO_MKSTEMPS = YesPlease NO_STRLCPY = YesPlease NO_NSEC = YesPlease FREAD_READS_DIRECTORIES = UnfortunatelyYes @@@ -789,12 -799,14 +801,14 @@@ endi ifeq ($(uname_S),GNU) # GNU/Hurd NO_STRLCPY=YesPlease + NO_MKSTEMPS = YesPlease endif ifeq ($(uname_S),IRIX64) NO_IPV6=YesPlease NO_SETENV=YesPlease NO_STRCASESTR=YesPlease NO_MEMMEM = YesPlease + NO_MKSTEMPS = YesPlease NO_STRLCPY = YesPlease NO_SOCKADDR_STORAGE=YesPlease SHELL_PATH=/usr/gnu/bin/bash @@@ -807,6 -819,7 +821,7 @@@ ifeq ($(uname_S),HP-UX NO_SETENV=YesPlease NO_STRCASESTR=YesPlease NO_MEMMEM = YesPlease + NO_MKSTEMPS = YesPlease NO_STRLCPY = YesPlease NO_MKDTEMP = YesPlease NO_UNSETENV = YesPlease @@@ -823,6 -836,7 +838,7 @@@ ifneq (,$(findstring MINGW,$(uname_S)) NO_PREAD = YesPlease NO_OPENSSL = YesPlease NO_CURL = YesPlease + NO_LIBGEN_H = YesPlease NO_SYMLINK_HEAD = YesPlease NO_IPV6 = YesPlease NO_SETENV = YesPlease @@@ -836,6 -850,7 +852,7 @@@ NO_C99_FORMAT = YesPlease NO_STRTOUMAX = YesPlease NO_MKDTEMP = YesPlease + NO_MKSTEMPS = YesPlease SNPRINTF_RETURNS_BOGUS = YesPlease NO_SVN_TESTS = YesPlease NO_PERL_MAKEMAKER = YesPlease @@@ -855,6 -870,7 +872,7 @@@ endif ifneq (,$(findstring arm,$(uname_M))) ARM_SHA1 = YesPlease + NO_MKSTEMPS = YesPlease endif -include config.mak.autogen @@@ -886,6 -902,11 +904,11 @@@ ifndef CC_LD_DYNPAT endif endif + ifdef NO_LIBGEN_H + COMPAT_CFLAGS += -DNO_LIBGEN_H + COMPAT_OBJS += compat/basename.o + endif + ifdef NO_CURL BASIC_CFLAGS += -DNO_CURL else @@@ -1013,6 -1034,10 +1036,10 @@@ ifdef NO_MKDTEM COMPAT_CFLAGS += -DNO_MKDTEMP COMPAT_OBJS += compat/mkdtemp.o endif + ifdef NO_MKSTEMPS + COMPAT_CFLAGS += -DNO_MKSTEMPS + COMPAT_OBJS += compat/mkstemps.o + endif ifdef NO_UNSETENV COMPAT_CFLAGS += -DNO_UNSETENV COMPAT_OBJS += compat/unsetenv.o diff --combined git-compat-util.h index 4236647c91,71445c6aac..f25f7f1a9e --- a/git-compat-util.h +++ b/git-compat-util.h @@@ -41,10 -41,8 +41,10 @@@ #if !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && !defined(_M_UNIX) #define _XOPEN_SOURCE 600 /* glibc2 and AIX 5.3L need 500, OpenBSD needs 600 for S_ISLNK() */ +#ifndef __sun__ #define _XOPEN_SOURCE_EXTENDED 1 /* AIX 5.3L needs this */ #endif +#endif #define _ALL_SOURCE 1 #define _GNU_SOURCE 1 #define _BSD_SOURCE 1 @@@ -99,6 -97,13 +99,13 @@@ #include "compat/mingw.h" #endif /* __MINGW32__ */ + #ifndef NO_LIBGEN_H + #include + #else + #define basename gitbasename + extern char *gitbasename(char *); + #endif + #ifndef NO_ICONV #include #endif @@@ -234,6 -239,11 +241,11 @@@ extern int gitsetenv(const char *, cons extern char *gitmkdtemp(char *); #endif + #ifdef NO_MKSTEMPS + #define mkstemps gitmkstemps + extern int gitmkstemps(char *, int); + #endif + #ifdef NO_UNSETENV #define unsetenv gitunsetenv extern void gitunsetenv(const char *);