mirror of
https://github.com/git/git
synced 2024-08-27 11:39:22 +00:00
Makefile: hoist uname autodetection to config.mak.uname
Our Makefile first sets up some sane per-platform defaults by looking at "uname", then modifies that according to the results of autoconf (if any), then modifies that according to the user's wishes in config.mak. For sub-Makefiles like Documentation/Makefile, the latter two are available, but the uname defaults are available only to the main Makefile. This hasn't been a problem so far, because the sub-Makefiles do not rely on any of those automatic settings to do their work. This patch puts the uname magic into its own file so it can be reused in other Makefiles, opening up the possibility of new knobs. Note that we leave one reference to uname in the top-level Makefile: if we are on Darwin, we must check the NO_FINK and NO_DARWIN_PORTS settings. But because we are combining uname settings with user-options, we must do so after all of the config is loaded. This is acceptable, as the resulting conditionals are about setting variables specific to the top-level Makefile (and if that ever changes, we can hoist them into a separate post-config include, too). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
3e293fba62
commit
e1b6dbb554
543
Makefile
543
Makefile
|
@ -334,19 +334,6 @@ GIT-VERSION-FILE: FORCE
|
|||
@$(SHELL_PATH) ./GIT-VERSION-GEN
|
||||
-include GIT-VERSION-FILE
|
||||
|
||||
uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not')
|
||||
uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not')
|
||||
uname_O := $(shell sh -c 'uname -o 2>/dev/null || echo not')
|
||||
uname_R := $(shell sh -c 'uname -r 2>/dev/null || echo not')
|
||||
uname_P := $(shell sh -c 'uname -p 2>/dev/null || echo not')
|
||||
uname_V := $(shell sh -c 'uname -v 2>/dev/null || echo not')
|
||||
|
||||
ifdef MSVC
|
||||
# avoid the MingW and Cygwin configuration sections
|
||||
uname_S := Windows
|
||||
uname_O := Windows
|
||||
endif
|
||||
|
||||
# CFLAGS and LDFLAGS are for the users to override from the command line.
|
||||
|
||||
CFLAGS = -g -O2 -Wall
|
||||
|
@ -945,535 +932,7 @@ EXTLIBS =
|
|||
|
||||
GIT_USER_AGENT = git/$(GIT_VERSION)
|
||||
|
||||
#
|
||||
# Platform specific tweaks
|
||||
#
|
||||
|
||||
# We choose to avoid "if .. else if .. else .. endif endif"
|
||||
# because maintaining the nesting to match is a pain. If
|
||||
# we had "elif" things would have been much nicer...
|
||||
|
||||
ifeq ($(uname_M),x86_64)
|
||||
XDL_FAST_HASH = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),OSF1)
|
||||
# Need this for u_short definitions et al
|
||||
BASIC_CFLAGS += -D_OSF_SOURCE
|
||||
SOCKLEN_T = int
|
||||
NO_STRTOULL = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),Linux)
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
HAVE_PATHS_H = YesPlease
|
||||
LIBC_CONTAINS_LIBINTL = YesPlease
|
||||
HAVE_DEV_TTY = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),GNU/kFreeBSD)
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
HAVE_PATHS_H = YesPlease
|
||||
DIR_HAS_BSD_GROUP_SEMANTICS = YesPlease
|
||||
LIBC_CONTAINS_LIBINTL = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),UnixWare)
|
||||
CC = cc
|
||||
NEEDS_SOCKET = YesPlease
|
||||
NEEDS_NSL = YesPlease
|
||||
NEEDS_SSL_WITH_CRYPTO = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
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
|
||||
INSTALL = ginstall
|
||||
TAR = gtar
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),SCO_SV)
|
||||
ifeq ($(uname_R),3.2)
|
||||
CFLAGS = -O2
|
||||
endif
|
||||
ifeq ($(uname_R),5)
|
||||
CC = cc
|
||||
BASIC_CFLAGS += -Kthread
|
||||
endif
|
||||
NEEDS_SOCKET = YesPlease
|
||||
NEEDS_NSL = YesPlease
|
||||
NEEDS_SSL_WITH_CRYPTO = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
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
|
||||
NO_MEMMEM = YesPlease
|
||||
INSTALL = ginstall
|
||||
TAR = gtar
|
||||
endif
|
||||
ifeq ($(uname_S),Darwin)
|
||||
NEEDS_CRYPTO_WITH_SSL = YesPlease
|
||||
NEEDS_SSL_WITH_CRYPTO = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
ifeq ($(shell expr "$(uname_R)" : '[15678]\.'),2)
|
||||
OLD_ICONV = UnfortunatelyYes
|
||||
endif
|
||||
ifeq ($(shell expr "$(uname_R)" : '[15]\.'),2)
|
||||
NO_STRLCPY = YesPlease
|
||||
endif
|
||||
NO_MEMMEM = YesPlease
|
||||
USE_ST_TIMESPEC = YesPlease
|
||||
HAVE_DEV_TTY = YesPlease
|
||||
COMPAT_OBJS += compat/precompose_utf8.o
|
||||
BASIC_CFLAGS += -DPRECOMPOSE_UNICODE
|
||||
endif
|
||||
ifeq ($(uname_S),SunOS)
|
||||
NEEDS_SOCKET = YesPlease
|
||||
NEEDS_NSL = YesPlease
|
||||
SHELL_PATH = /bin/bash
|
||||
SANE_TOOL_PATH = /usr/xpg6/bin:/usr/xpg4/bin
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_REGEX = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
NO_MSGFMT_EXTENDED_OPTIONS = YesPlease
|
||||
HAVE_DEV_TTY = YesPlease
|
||||
ifeq ($(uname_R),5.6)
|
||||
SOCKLEN_T = int
|
||||
NO_HSTRERROR = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
NO_SOCKADDR_STORAGE = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_R),5.7)
|
||||
NEEDS_RESOLV = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
NO_SOCKADDR_STORAGE = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_R),5.8)
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_R),5.9)
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
INSTALL = /usr/ucb/install
|
||||
TAR = gtar
|
||||
BASIC_CFLAGS += -D__EXTENSIONS__ -D__sun__ -DHAVE_ALLOCA_H
|
||||
endif
|
||||
ifeq ($(uname_O),Cygwin)
|
||||
ifeq ($(shell expr "$(uname_R)" : '1\.[1-6]\.'),4)
|
||||
NO_D_TYPE_IN_DIRENT = YesPlease
|
||||
NO_D_INO_IN_DIRENT = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_SYMLINK_HEAD = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
OLD_ICONV = UnfortunatelyYes
|
||||
CYGWIN_V15_WIN32API = YesPlease
|
||||
endif
|
||||
NO_THREAD_SAFE_PREAD = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
NO_FAST_WORKING_DIRECTORY = UnfortunatelyYes
|
||||
NO_TRUSTABLE_FILEMODE = UnfortunatelyYes
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
# There are conflicting reports about this.
|
||||
# On some boxes NO_MMAP is needed, and not so elsewhere.
|
||||
# Try commenting this out if you suspect MMAP is more efficient
|
||||
NO_MMAP = YesPlease
|
||||
X = .exe
|
||||
COMPAT_OBJS += compat/cygwin.o
|
||||
UNRELIABLE_FSTAT = UnfortunatelyYes
|
||||
SPARSE_FLAGS = -isystem /usr/include/w32api -Wno-one-bit-signed-bitfield
|
||||
endif
|
||||
ifeq ($(uname_S),FreeBSD)
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
OLD_ICONV = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
BASIC_CFLAGS += -I/usr/local/include
|
||||
BASIC_LDFLAGS += -L/usr/local/lib
|
||||
DIR_HAS_BSD_GROUP_SEMANTICS = YesPlease
|
||||
USE_ST_TIMESPEC = YesPlease
|
||||
ifeq ($(shell expr "$(uname_R)" : '4\.'),2)
|
||||
PTHREAD_LIBS = -pthread
|
||||
NO_UINTMAX_T = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
endif
|
||||
PYTHON_PATH = /usr/local/bin/python
|
||||
HAVE_PATHS_H = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),OpenBSD)
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
USE_ST_TIMESPEC = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
BASIC_CFLAGS += -I/usr/local/include
|
||||
BASIC_LDFLAGS += -L/usr/local/lib
|
||||
HAVE_PATHS_H = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),NetBSD)
|
||||
ifeq ($(shell expr "$(uname_R)" : '[01]\.'),2)
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
endif
|
||||
BASIC_CFLAGS += -I/usr/pkg/include
|
||||
BASIC_LDFLAGS += -L/usr/pkg/lib $(CC_LD_DYNPATH)/usr/pkg/lib
|
||||
USE_ST_TIMESPEC = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
HAVE_PATHS_H = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),AIX)
|
||||
DEFAULT_PAGER = more
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
FREAD_READS_DIRECTORIES = UnfortunatelyYes
|
||||
INTERNAL_QSORT = UnfortunatelyYes
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
BASIC_CFLAGS += -D_LARGE_FILES
|
||||
ifeq ($(shell expr "$(uname_V)" : '[1234]'),1)
|
||||
NO_PTHREADS = YesPlease
|
||||
else
|
||||
PTHREAD_LIBS = -lpthread
|
||||
endif
|
||||
ifeq ($(shell expr "$(uname_V).$(uname_R)" : '5\.1'),3)
|
||||
INLINE = ''
|
||||
endif
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_S),GNU)
|
||||
# GNU/Hurd
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
HAVE_PATHS_H = YesPlease
|
||||
LIBC_CONTAINS_LIBINTL = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),IRIX)
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
# When compiled with the MIPSpro 7.4.4m compiler, and without pthreads
|
||||
# (i.e. NO_PTHREADS is set), and _with_ MMAP (i.e. NO_MMAP is not set),
|
||||
# git dies with a segmentation fault when trying to access the first
|
||||
# entry of a reflog. The conservative choice is made to always set
|
||||
# NO_MMAP. If you suspect that your compiler is not affected by this
|
||||
# issue, comment out the NO_MMAP statement.
|
||||
NO_MMAP = YesPlease
|
||||
NO_REGEX = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
SNPRINTF_RETURNS_BOGUS = YesPlease
|
||||
SHELL_PATH = /usr/gnu/bin/bash
|
||||
NEEDS_LIBGEN = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),IRIX64)
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
# When compiled with the MIPSpro 7.4.4m compiler, and without pthreads
|
||||
# (i.e. NO_PTHREADS is set), and _with_ MMAP (i.e. NO_MMAP is not set),
|
||||
# git dies with a segmentation fault when trying to access the first
|
||||
# entry of a reflog. The conservative choice is made to always set
|
||||
# NO_MMAP. If you suspect that your compiler is not affected by this
|
||||
# issue, comment out the NO_MMAP statement.
|
||||
NO_MMAP = YesPlease
|
||||
NO_REGEX = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
SNPRINTF_RETURNS_BOGUS = YesPlease
|
||||
SHELL_PATH = /usr/gnu/bin/bash
|
||||
NEEDS_LIBGEN = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),HP-UX)
|
||||
INLINE = __inline
|
||||
NO_IPV6 = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_HSTRERROR = YesPlease
|
||||
NO_SYS_SELECT_H = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
SNPRINTF_RETURNS_BOGUS = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
ifeq ($(uname_R),B.11.00)
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_INET_PTON = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_R),B.10.20)
|
||||
# Override HP-UX 11.x setting:
|
||||
INLINE =
|
||||
SOCKLEN_T = size_t
|
||||
NO_PREAD = YesPlease
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_INET_PTON = YesPlease
|
||||
endif
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_S),Windows)
|
||||
GIT_VERSION := $(GIT_VERSION).MSVC
|
||||
pathsep = ;
|
||||
NO_PREAD = YesPlease
|
||||
NEEDS_CRYPTO_WITH_SSL = YesPlease
|
||||
NO_LIBGEN_H = YesPlease
|
||||
NO_POLL = YesPlease
|
||||
NO_SYMLINK_HEAD = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
NO_UNIX_SOCKETS = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_STRTOK_R = YesPlease
|
||||
NO_FNMATCH = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
# NEEDS_LIBICONV = YesPlease
|
||||
NO_ICONV = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
NO_STRTOULL = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
SNPRINTF_RETURNS_BOGUS = YesPlease
|
||||
NO_SVN_TESTS = YesPlease
|
||||
NO_PERL_MAKEMAKER = YesPlease
|
||||
RUNTIME_PREFIX = YesPlease
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
USE_WIN32_MMAP = YesPlease
|
||||
# USE_NED_ALLOCATOR = YesPlease
|
||||
UNRELIABLE_FSTAT = UnfortunatelyYes
|
||||
OBJECT_CREATION_USES_RENAMES = UnfortunatelyNeedsTo
|
||||
NO_REGEX = YesPlease
|
||||
NO_CURL = YesPlease
|
||||
NO_PYTHON = YesPlease
|
||||
BLK_SHA1 = YesPlease
|
||||
NO_POSIX_GOODIES = UnfortunatelyYes
|
||||
NATIVE_CRLF = YesPlease
|
||||
DEFAULT_HELP_FORMAT = html
|
||||
|
||||
CC = compat/vcbuild/scripts/clink.pl
|
||||
AR = compat/vcbuild/scripts/lib.pl
|
||||
CFLAGS =
|
||||
BASIC_CFLAGS = -nologo -I. -I../zlib -Icompat/vcbuild -Icompat/vcbuild/include -DWIN32 -D_CONSOLE -DHAVE_STRING_H -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE
|
||||
COMPAT_OBJS = compat/msvc.o compat/winansi.o \
|
||||
compat/win32/pthread.o compat/win32/syslog.o \
|
||||
compat/win32/dirent.o
|
||||
COMPAT_CFLAGS = -D__USE_MINGW_ACCESS -DNOGDI -DHAVE_STRING_H -DHAVE_ALLOCA_H -Icompat -Icompat/regex -Icompat/win32 -DSTRIP_EXTENSION=\".exe\"
|
||||
BASIC_LDFLAGS = -IGNORE:4217 -IGNORE:4049 -NOLOGO -SUBSYSTEM:CONSOLE -NODEFAULTLIB:MSVCRT.lib
|
||||
EXTLIBS = user32.lib advapi32.lib shell32.lib wininet.lib ws2_32.lib
|
||||
PTHREAD_LIBS =
|
||||
lib =
|
||||
ifndef DEBUG
|
||||
BASIC_CFLAGS += -GL -Os -MT
|
||||
BASIC_LDFLAGS += -LTCG
|
||||
AR += -LTCG
|
||||
else
|
||||
BASIC_CFLAGS += -Zi -MTd
|
||||
endif
|
||||
X = .exe
|
||||
endif
|
||||
ifeq ($(uname_S),Interix)
|
||||
NO_INITGROUPS = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
ifeq ($(uname_R),3.5)
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_INET_PTON = YesPlease
|
||||
NO_SOCKADDR_STORAGE = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_R),5.2)
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_INET_PTON = YesPlease
|
||||
NO_SOCKADDR_STORAGE = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
endif
|
||||
endif
|
||||
ifeq ($(uname_S),Minix)
|
||||
NO_IPV6 = YesPlease
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
NEEDS_LIBGEN =
|
||||
NEEDS_CRYPTO_WITH_SSL = YesPlease
|
||||
NEEDS_IDN_WITH_CURL = YesPlease
|
||||
NEEDS_SSL_WITH_CURL = YesPlease
|
||||
NEEDS_RESOLV =
|
||||
NO_HSTRERROR = YesPlease
|
||||
NO_MMAP = YesPlease
|
||||
NO_CURL =
|
||||
NO_EXPAT =
|
||||
endif
|
||||
ifeq ($(uname_S),NONSTOP_KERNEL)
|
||||
# Needs some C99 features, "inline" is just one of them.
|
||||
# INLINE='' would just replace one set of warnings with another and
|
||||
# still not compile in c89 mode, due to non-const array initializations.
|
||||
CC = cc -c99
|
||||
# Disable all optimization, seems to result in bad code, with -O or -O2
|
||||
# or even -O1 (default), /usr/local/libexec/git-core/git-pack-objects
|
||||
# abends on "git push". Needs more investigation.
|
||||
CFLAGS = -g -O0
|
||||
# We'd want it to be here.
|
||||
prefix = /usr/local
|
||||
# Our's are in ${prefix}/bin (perl might also be in /usr/bin/perl).
|
||||
PERL_PATH = ${prefix}/bin/perl
|
||||
PYTHON_PATH = ${prefix}/bin/python
|
||||
|
||||
# As detected by './configure'.
|
||||
# Missdetected, hence commented out, see below.
|
||||
#NO_CURL = YesPlease
|
||||
# Added manually, see above.
|
||||
NEEDS_SSL_WITH_CURL = YesPlease
|
||||
HAVE_LIBCHARSET_H = YesPlease
|
||||
HAVE_STRINGS_H = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
NEEDS_LIBINTL_BEFORE_LIBICONV = YesPlease
|
||||
NO_SYS_SELECT_H = UnfortunatelyYes
|
||||
NO_D_TYPE_IN_DIRENT = YesPlease
|
||||
NO_HSTRERROR = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
# Currently libiconv-1.9.1.
|
||||
OLD_ICONV = UnfortunatelyYes
|
||||
NO_REGEX = YesPlease
|
||||
NO_PTHREADS = UnfortunatelyYes
|
||||
|
||||
# Not detected (nor checked for) by './configure'.
|
||||
# We don't have SA_RESTART on NonStop, unfortunalety.
|
||||
COMPAT_CFLAGS += -DSA_RESTART=0
|
||||
# Apparently needed in compat/fnmatch/fnmatch.c.
|
||||
COMPAT_CFLAGS += -DHAVE_STRING_H=1
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
NO_PREAD = YesPlease
|
||||
NO_MMAP = YesPlease
|
||||
NO_POLL = YesPlease
|
||||
NO_INTPTR_T = UnfortunatelyYes
|
||||
# Bug report 10-120822-4477 submitted to HP NonStop development.
|
||||
MKDIR_WO_TRAILING_SLASH = YesPlease
|
||||
# RFE 10-120912-4693 submitted to HP NonStop development.
|
||||
NO_SETITIMER = UnfortunatelyYes
|
||||
SANE_TOOL_PATH = /usr/coreutils/bin:/usr/local/bin
|
||||
SHELL_PATH = /usr/local/bin/bash
|
||||
# as of H06.25/J06.14, we might better use this
|
||||
#SHELL_PATH = /usr/coreutils/bin/bash
|
||||
endif
|
||||
ifneq (,$(findstring MINGW,$(uname_S)))
|
||||
pathsep = ;
|
||||
NO_PREAD = YesPlease
|
||||
NEEDS_CRYPTO_WITH_SSL = YesPlease
|
||||
NO_LIBGEN_H = YesPlease
|
||||
NO_POLL = YesPlease
|
||||
NO_SYMLINK_HEAD = YesPlease
|
||||
NO_UNIX_SOCKETS = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_STRTOK_R = YesPlease
|
||||
NO_FNMATCH = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
OLD_ICONV = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_SVN_TESTS = YesPlease
|
||||
NO_PERL_MAKEMAKER = YesPlease
|
||||
RUNTIME_PREFIX = YesPlease
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
USE_WIN32_MMAP = YesPlease
|
||||
USE_NED_ALLOCATOR = YesPlease
|
||||
UNRELIABLE_FSTAT = UnfortunatelyYes
|
||||
OBJECT_CREATION_USES_RENAMES = UnfortunatelyNeedsTo
|
||||
NO_REGEX = YesPlease
|
||||
NO_PYTHON = YesPlease
|
||||
BLK_SHA1 = YesPlease
|
||||
ETAGS_TARGET = ETAGS
|
||||
NO_INET_PTON = YesPlease
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_POSIX_GOODIES = UnfortunatelyYes
|
||||
COMPAT_CFLAGS += -D__USE_MINGW_ACCESS -DNOGDI -Icompat -Icompat/win32
|
||||
COMPAT_CFLAGS += -DSTRIP_EXTENSION=\".exe\"
|
||||
COMPAT_OBJS += compat/mingw.o compat/winansi.o \
|
||||
compat/win32/pthread.o compat/win32/syslog.o \
|
||||
compat/win32/dirent.o
|
||||
EXTLIBS += -lws2_32
|
||||
PTHREAD_LIBS =
|
||||
X = .exe
|
||||
SPARSE_FLAGS = -Wno-one-bit-signed-bitfield
|
||||
ifneq (,$(wildcard ../THIS_IS_MSYSGIT))
|
||||
htmldir = doc/git/html/
|
||||
prefix =
|
||||
INSTALL = /bin/install
|
||||
EXTLIBS += /mingw/lib/libz.a
|
||||
NO_R_TO_GCC_LINKER = YesPlease
|
||||
INTERNAL_QSORT = YesPlease
|
||||
HAVE_LIBCHARSET_H = YesPlease
|
||||
else
|
||||
NO_CURL = YesPlease
|
||||
endif
|
||||
endif
|
||||
ifeq ($(uname_S),QNX)
|
||||
COMPAT_CFLAGS += -DSA_RESTART=0
|
||||
HAVE_STRINGS_H = YesPlease
|
||||
NEEDS_SOCKET = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
NO_GETPAGESIZE = YesPlease
|
||||
NO_ICONV = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
NO_PTHREADS = YesPlease
|
||||
NO_R_TO_GCC_LINKER = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
endif
|
||||
|
||||
include config.mak.uname
|
||||
-include config.mak.autogen
|
||||
-include config.mak
|
||||
|
||||
|
|
539
config.mak.uname
Normal file
539
config.mak.uname
Normal file
|
@ -0,0 +1,539 @@
|
|||
# Platform specific Makefile tweaks based on uname detection
|
||||
|
||||
uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not')
|
||||
uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not')
|
||||
uname_O := $(shell sh -c 'uname -o 2>/dev/null || echo not')
|
||||
uname_R := $(shell sh -c 'uname -r 2>/dev/null || echo not')
|
||||
uname_P := $(shell sh -c 'uname -p 2>/dev/null || echo not')
|
||||
uname_V := $(shell sh -c 'uname -v 2>/dev/null || echo not')
|
||||
|
||||
ifdef MSVC
|
||||
# avoid the MingW and Cygwin configuration sections
|
||||
uname_S := Windows
|
||||
uname_O := Windows
|
||||
endif
|
||||
|
||||
# We choose to avoid "if .. else if .. else .. endif endif"
|
||||
# because maintaining the nesting to match is a pain. If
|
||||
# we had "elif" things would have been much nicer...
|
||||
|
||||
ifeq ($(uname_M),x86_64)
|
||||
XDL_FAST_HASH = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),OSF1)
|
||||
# Need this for u_short definitions et al
|
||||
BASIC_CFLAGS += -D_OSF_SOURCE
|
||||
SOCKLEN_T = int
|
||||
NO_STRTOULL = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),Linux)
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
HAVE_PATHS_H = YesPlease
|
||||
LIBC_CONTAINS_LIBINTL = YesPlease
|
||||
HAVE_DEV_TTY = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),GNU/kFreeBSD)
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
HAVE_PATHS_H = YesPlease
|
||||
DIR_HAS_BSD_GROUP_SEMANTICS = YesPlease
|
||||
LIBC_CONTAINS_LIBINTL = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),UnixWare)
|
||||
CC = cc
|
||||
NEEDS_SOCKET = YesPlease
|
||||
NEEDS_NSL = YesPlease
|
||||
NEEDS_SSL_WITH_CRYPTO = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
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
|
||||
INSTALL = ginstall
|
||||
TAR = gtar
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),SCO_SV)
|
||||
ifeq ($(uname_R),3.2)
|
||||
CFLAGS = -O2
|
||||
endif
|
||||
ifeq ($(uname_R),5)
|
||||
CC = cc
|
||||
BASIC_CFLAGS += -Kthread
|
||||
endif
|
||||
NEEDS_SOCKET = YesPlease
|
||||
NEEDS_NSL = YesPlease
|
||||
NEEDS_SSL_WITH_CRYPTO = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
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
|
||||
NO_MEMMEM = YesPlease
|
||||
INSTALL = ginstall
|
||||
TAR = gtar
|
||||
endif
|
||||
ifeq ($(uname_S),Darwin)
|
||||
NEEDS_CRYPTO_WITH_SSL = YesPlease
|
||||
NEEDS_SSL_WITH_CRYPTO = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
ifeq ($(shell expr "$(uname_R)" : '[15678]\.'),2)
|
||||
OLD_ICONV = UnfortunatelyYes
|
||||
endif
|
||||
ifeq ($(shell expr "$(uname_R)" : '[15]\.'),2)
|
||||
NO_STRLCPY = YesPlease
|
||||
endif
|
||||
NO_MEMMEM = YesPlease
|
||||
USE_ST_TIMESPEC = YesPlease
|
||||
HAVE_DEV_TTY = YesPlease
|
||||
COMPAT_OBJS += compat/precompose_utf8.o
|
||||
BASIC_CFLAGS += -DPRECOMPOSE_UNICODE
|
||||
endif
|
||||
ifeq ($(uname_S),SunOS)
|
||||
NEEDS_SOCKET = YesPlease
|
||||
NEEDS_NSL = YesPlease
|
||||
SHELL_PATH = /bin/bash
|
||||
SANE_TOOL_PATH = /usr/xpg6/bin:/usr/xpg4/bin
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_REGEX = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
NO_MSGFMT_EXTENDED_OPTIONS = YesPlease
|
||||
HAVE_DEV_TTY = YesPlease
|
||||
ifeq ($(uname_R),5.6)
|
||||
SOCKLEN_T = int
|
||||
NO_HSTRERROR = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
NO_SOCKADDR_STORAGE = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_R),5.7)
|
||||
NEEDS_RESOLV = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
NO_SOCKADDR_STORAGE = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_R),5.8)
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_R),5.9)
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
INSTALL = /usr/ucb/install
|
||||
TAR = gtar
|
||||
BASIC_CFLAGS += -D__EXTENSIONS__ -D__sun__ -DHAVE_ALLOCA_H
|
||||
endif
|
||||
ifeq ($(uname_O),Cygwin)
|
||||
ifeq ($(shell expr "$(uname_R)" : '1\.[1-6]\.'),4)
|
||||
NO_D_TYPE_IN_DIRENT = YesPlease
|
||||
NO_D_INO_IN_DIRENT = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_SYMLINK_HEAD = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
OLD_ICONV = UnfortunatelyYes
|
||||
CYGWIN_V15_WIN32API = YesPlease
|
||||
endif
|
||||
NO_THREAD_SAFE_PREAD = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
NO_FAST_WORKING_DIRECTORY = UnfortunatelyYes
|
||||
NO_TRUSTABLE_FILEMODE = UnfortunatelyYes
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
# There are conflicting reports about this.
|
||||
# On some boxes NO_MMAP is needed, and not so elsewhere.
|
||||
# Try commenting this out if you suspect MMAP is more efficient
|
||||
NO_MMAP = YesPlease
|
||||
X = .exe
|
||||
COMPAT_OBJS += compat/cygwin.o
|
||||
UNRELIABLE_FSTAT = UnfortunatelyYes
|
||||
SPARSE_FLAGS = -isystem /usr/include/w32api -Wno-one-bit-signed-bitfield
|
||||
endif
|
||||
ifeq ($(uname_S),FreeBSD)
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
OLD_ICONV = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
BASIC_CFLAGS += -I/usr/local/include
|
||||
BASIC_LDFLAGS += -L/usr/local/lib
|
||||
DIR_HAS_BSD_GROUP_SEMANTICS = YesPlease
|
||||
USE_ST_TIMESPEC = YesPlease
|
||||
ifeq ($(shell expr "$(uname_R)" : '4\.'),2)
|
||||
PTHREAD_LIBS = -pthread
|
||||
NO_UINTMAX_T = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
endif
|
||||
PYTHON_PATH = /usr/local/bin/python
|
||||
HAVE_PATHS_H = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),OpenBSD)
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
USE_ST_TIMESPEC = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
BASIC_CFLAGS += -I/usr/local/include
|
||||
BASIC_LDFLAGS += -L/usr/local/lib
|
||||
HAVE_PATHS_H = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),NetBSD)
|
||||
ifeq ($(shell expr "$(uname_R)" : '[01]\.'),2)
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
endif
|
||||
BASIC_CFLAGS += -I/usr/pkg/include
|
||||
BASIC_LDFLAGS += -L/usr/pkg/lib $(CC_LD_DYNPATH)/usr/pkg/lib
|
||||
USE_ST_TIMESPEC = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
HAVE_PATHS_H = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),AIX)
|
||||
DEFAULT_PAGER = more
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
FREAD_READS_DIRECTORIES = UnfortunatelyYes
|
||||
INTERNAL_QSORT = UnfortunatelyYes
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
BASIC_CFLAGS += -D_LARGE_FILES
|
||||
ifeq ($(shell expr "$(uname_V)" : '[1234]'),1)
|
||||
NO_PTHREADS = YesPlease
|
||||
else
|
||||
PTHREAD_LIBS = -lpthread
|
||||
endif
|
||||
ifeq ($(shell expr "$(uname_V).$(uname_R)" : '5\.1'),3)
|
||||
INLINE = ''
|
||||
endif
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_S),GNU)
|
||||
# GNU/Hurd
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
HAVE_PATHS_H = YesPlease
|
||||
LIBC_CONTAINS_LIBINTL = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),IRIX)
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
# When compiled with the MIPSpro 7.4.4m compiler, and without pthreads
|
||||
# (i.e. NO_PTHREADS is set), and _with_ MMAP (i.e. NO_MMAP is not set),
|
||||
# git dies with a segmentation fault when trying to access the first
|
||||
# entry of a reflog. The conservative choice is made to always set
|
||||
# NO_MMAP. If you suspect that your compiler is not affected by this
|
||||
# issue, comment out the NO_MMAP statement.
|
||||
NO_MMAP = YesPlease
|
||||
NO_REGEX = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
SNPRINTF_RETURNS_BOGUS = YesPlease
|
||||
SHELL_PATH = /usr/gnu/bin/bash
|
||||
NEEDS_LIBGEN = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),IRIX64)
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
# When compiled with the MIPSpro 7.4.4m compiler, and without pthreads
|
||||
# (i.e. NO_PTHREADS is set), and _with_ MMAP (i.e. NO_MMAP is not set),
|
||||
# git dies with a segmentation fault when trying to access the first
|
||||
# entry of a reflog. The conservative choice is made to always set
|
||||
# NO_MMAP. If you suspect that your compiler is not affected by this
|
||||
# issue, comment out the NO_MMAP statement.
|
||||
NO_MMAP = YesPlease
|
||||
NO_REGEX = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
SNPRINTF_RETURNS_BOGUS = YesPlease
|
||||
SHELL_PATH = /usr/gnu/bin/bash
|
||||
NEEDS_LIBGEN = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_S),HP-UX)
|
||||
INLINE = __inline
|
||||
NO_IPV6 = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_HSTRERROR = YesPlease
|
||||
NO_SYS_SELECT_H = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
SNPRINTF_RETURNS_BOGUS = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
ifeq ($(uname_R),B.11.00)
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_INET_PTON = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_R),B.10.20)
|
||||
# Override HP-UX 11.x setting:
|
||||
INLINE =
|
||||
SOCKLEN_T = size_t
|
||||
NO_PREAD = YesPlease
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_INET_PTON = YesPlease
|
||||
endif
|
||||
GIT_TEST_CMP = cmp
|
||||
endif
|
||||
ifeq ($(uname_S),Windows)
|
||||
GIT_VERSION := $(GIT_VERSION).MSVC
|
||||
pathsep = ;
|
||||
NO_PREAD = YesPlease
|
||||
NEEDS_CRYPTO_WITH_SSL = YesPlease
|
||||
NO_LIBGEN_H = YesPlease
|
||||
NO_POLL = YesPlease
|
||||
NO_SYMLINK_HEAD = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
NO_UNIX_SOCKETS = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_STRTOK_R = YesPlease
|
||||
NO_FNMATCH = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
# NEEDS_LIBICONV = YesPlease
|
||||
NO_ICONV = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
NO_STRTOULL = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
SNPRINTF_RETURNS_BOGUS = YesPlease
|
||||
NO_SVN_TESTS = YesPlease
|
||||
NO_PERL_MAKEMAKER = YesPlease
|
||||
RUNTIME_PREFIX = YesPlease
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
USE_WIN32_MMAP = YesPlease
|
||||
# USE_NED_ALLOCATOR = YesPlease
|
||||
UNRELIABLE_FSTAT = UnfortunatelyYes
|
||||
OBJECT_CREATION_USES_RENAMES = UnfortunatelyNeedsTo
|
||||
NO_REGEX = YesPlease
|
||||
NO_CURL = YesPlease
|
||||
NO_PYTHON = YesPlease
|
||||
BLK_SHA1 = YesPlease
|
||||
NO_POSIX_GOODIES = UnfortunatelyYes
|
||||
NATIVE_CRLF = YesPlease
|
||||
DEFAULT_HELP_FORMAT = html
|
||||
|
||||
CC = compat/vcbuild/scripts/clink.pl
|
||||
AR = compat/vcbuild/scripts/lib.pl
|
||||
CFLAGS =
|
||||
BASIC_CFLAGS = -nologo -I. -I../zlib -Icompat/vcbuild -Icompat/vcbuild/include -DWIN32 -D_CONSOLE -DHAVE_STRING_H -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE
|
||||
COMPAT_OBJS = compat/msvc.o compat/winansi.o \
|
||||
compat/win32/pthread.o compat/win32/syslog.o \
|
||||
compat/win32/dirent.o
|
||||
COMPAT_CFLAGS = -D__USE_MINGW_ACCESS -DNOGDI -DHAVE_STRING_H -DHAVE_ALLOCA_H -Icompat -Icompat/regex -Icompat/win32 -DSTRIP_EXTENSION=\".exe\"
|
||||
BASIC_LDFLAGS = -IGNORE:4217 -IGNORE:4049 -NOLOGO -SUBSYSTEM:CONSOLE -NODEFAULTLIB:MSVCRT.lib
|
||||
EXTLIBS = user32.lib advapi32.lib shell32.lib wininet.lib ws2_32.lib
|
||||
PTHREAD_LIBS =
|
||||
lib =
|
||||
ifndef DEBUG
|
||||
BASIC_CFLAGS += -GL -Os -MT
|
||||
BASIC_LDFLAGS += -LTCG
|
||||
AR += -LTCG
|
||||
else
|
||||
BASIC_CFLAGS += -Zi -MTd
|
||||
endif
|
||||
X = .exe
|
||||
endif
|
||||
ifeq ($(uname_S),Interix)
|
||||
NO_INITGROUPS = YesPlease
|
||||
NO_IPV6 = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
ifeq ($(uname_R),3.5)
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_INET_PTON = YesPlease
|
||||
NO_SOCKADDR_STORAGE = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
endif
|
||||
ifeq ($(uname_R),5.2)
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_INET_PTON = YesPlease
|
||||
NO_SOCKADDR_STORAGE = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
endif
|
||||
endif
|
||||
ifeq ($(uname_S),Minix)
|
||||
NO_IPV6 = YesPlease
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
NEEDS_LIBGEN =
|
||||
NEEDS_CRYPTO_WITH_SSL = YesPlease
|
||||
NEEDS_IDN_WITH_CURL = YesPlease
|
||||
NEEDS_SSL_WITH_CURL = YesPlease
|
||||
NEEDS_RESOLV =
|
||||
NO_HSTRERROR = YesPlease
|
||||
NO_MMAP = YesPlease
|
||||
NO_CURL =
|
||||
NO_EXPAT =
|
||||
endif
|
||||
ifeq ($(uname_S),NONSTOP_KERNEL)
|
||||
# Needs some C99 features, "inline" is just one of them.
|
||||
# INLINE='' would just replace one set of warnings with another and
|
||||
# still not compile in c89 mode, due to non-const array initializations.
|
||||
CC = cc -c99
|
||||
# Disable all optimization, seems to result in bad code, with -O or -O2
|
||||
# or even -O1 (default), /usr/local/libexec/git-core/git-pack-objects
|
||||
# abends on "git push". Needs more investigation.
|
||||
CFLAGS = -g -O0
|
||||
# We'd want it to be here.
|
||||
prefix = /usr/local
|
||||
# Our's are in ${prefix}/bin (perl might also be in /usr/bin/perl).
|
||||
PERL_PATH = ${prefix}/bin/perl
|
||||
PYTHON_PATH = ${prefix}/bin/python
|
||||
|
||||
# As detected by './configure'.
|
||||
# Missdetected, hence commented out, see below.
|
||||
#NO_CURL = YesPlease
|
||||
# Added manually, see above.
|
||||
NEEDS_SSL_WITH_CURL = YesPlease
|
||||
HAVE_LIBCHARSET_H = YesPlease
|
||||
HAVE_STRINGS_H = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
NEEDS_LIBINTL_BEFORE_LIBICONV = YesPlease
|
||||
NO_SYS_SELECT_H = UnfortunatelyYes
|
||||
NO_D_TYPE_IN_DIRENT = YesPlease
|
||||
NO_HSTRERROR = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
# Currently libiconv-1.9.1.
|
||||
OLD_ICONV = UnfortunatelyYes
|
||||
NO_REGEX = YesPlease
|
||||
NO_PTHREADS = UnfortunatelyYes
|
||||
|
||||
# Not detected (nor checked for) by './configure'.
|
||||
# We don't have SA_RESTART on NonStop, unfortunalety.
|
||||
COMPAT_CFLAGS += -DSA_RESTART=0
|
||||
# Apparently needed in compat/fnmatch/fnmatch.c.
|
||||
COMPAT_CFLAGS += -DHAVE_STRING_H=1
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
NO_PREAD = YesPlease
|
||||
NO_MMAP = YesPlease
|
||||
NO_POLL = YesPlease
|
||||
NO_INTPTR_T = UnfortunatelyYes
|
||||
# Bug report 10-120822-4477 submitted to HP NonStop development.
|
||||
MKDIR_WO_TRAILING_SLASH = YesPlease
|
||||
# RFE 10-120912-4693 submitted to HP NonStop development.
|
||||
NO_SETITIMER = UnfortunatelyYes
|
||||
SANE_TOOL_PATH = /usr/coreutils/bin:/usr/local/bin
|
||||
SHELL_PATH = /usr/local/bin/bash
|
||||
# as of H06.25/J06.14, we might better use this
|
||||
#SHELL_PATH = /usr/coreutils/bin/bash
|
||||
endif
|
||||
ifneq (,$(findstring MINGW,$(uname_S)))
|
||||
pathsep = ;
|
||||
NO_PREAD = YesPlease
|
||||
NEEDS_CRYPTO_WITH_SSL = YesPlease
|
||||
NO_LIBGEN_H = YesPlease
|
||||
NO_POLL = YesPlease
|
||||
NO_SYMLINK_HEAD = YesPlease
|
||||
NO_UNIX_SOCKETS = YesPlease
|
||||
NO_SETENV = YesPlease
|
||||
NO_UNSETENV = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
NO_STRTOK_R = YesPlease
|
||||
NO_FNMATCH = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NEEDS_LIBICONV = YesPlease
|
||||
OLD_ICONV = YesPlease
|
||||
NO_STRTOUMAX = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_SVN_TESTS = YesPlease
|
||||
NO_PERL_MAKEMAKER = YesPlease
|
||||
RUNTIME_PREFIX = YesPlease
|
||||
NO_ST_BLOCKS_IN_STRUCT_STAT = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
USE_WIN32_MMAP = YesPlease
|
||||
USE_NED_ALLOCATOR = YesPlease
|
||||
UNRELIABLE_FSTAT = UnfortunatelyYes
|
||||
OBJECT_CREATION_USES_RENAMES = UnfortunatelyNeedsTo
|
||||
NO_REGEX = YesPlease
|
||||
NO_PYTHON = YesPlease
|
||||
BLK_SHA1 = YesPlease
|
||||
ETAGS_TARGET = ETAGS
|
||||
NO_INET_PTON = YesPlease
|
||||
NO_INET_NTOP = YesPlease
|
||||
NO_POSIX_GOODIES = UnfortunatelyYes
|
||||
COMPAT_CFLAGS += -D__USE_MINGW_ACCESS -DNOGDI -Icompat -Icompat/win32
|
||||
COMPAT_CFLAGS += -DSTRIP_EXTENSION=\".exe\"
|
||||
COMPAT_OBJS += compat/mingw.o compat/winansi.o \
|
||||
compat/win32/pthread.o compat/win32/syslog.o \
|
||||
compat/win32/dirent.o
|
||||
EXTLIBS += -lws2_32
|
||||
PTHREAD_LIBS =
|
||||
X = .exe
|
||||
SPARSE_FLAGS = -Wno-one-bit-signed-bitfield
|
||||
ifneq (,$(wildcard ../THIS_IS_MSYSGIT))
|
||||
htmldir = doc/git/html/
|
||||
prefix =
|
||||
INSTALL = /bin/install
|
||||
EXTLIBS += /mingw/lib/libz.a
|
||||
NO_R_TO_GCC_LINKER = YesPlease
|
||||
INTERNAL_QSORT = YesPlease
|
||||
HAVE_LIBCHARSET_H = YesPlease
|
||||
else
|
||||
NO_CURL = YesPlease
|
||||
endif
|
||||
endif
|
||||
ifeq ($(uname_S),QNX)
|
||||
COMPAT_CFLAGS += -DSA_RESTART=0
|
||||
HAVE_STRINGS_H = YesPlease
|
||||
NEEDS_SOCKET = YesPlease
|
||||
NO_FNMATCH_CASEFOLD = YesPlease
|
||||
NO_GETPAGESIZE = YesPlease
|
||||
NO_ICONV = YesPlease
|
||||
NO_MEMMEM = YesPlease
|
||||
NO_MKDTEMP = YesPlease
|
||||
NO_MKSTEMPS = YesPlease
|
||||
NO_NSEC = YesPlease
|
||||
NO_PTHREADS = YesPlease
|
||||
NO_R_TO_GCC_LINKER = YesPlease
|
||||
NO_STRCASESTR = YesPlease
|
||||
NO_STRLCPY = YesPlease
|
||||
endif
|
Loading…
Reference in a new issue