From: Junio C Hamano Date: Tue, 25 Sep 2012 17:40:18 +0000 (-0700) Subject: Merge branch 'js/poll-emu' X-Git-Tag: v1.8.0-rc0~22 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/d782797aaf230e375d440d8ca84cd0465edd7ff4?ds=inline;hp=-c Merge branch 'js/poll-emu' * js/poll-emu: make poll() work on platforms that can't recv() on a non-socket poll() exits too early with EFAULT if 1st arg is NULL fix some win32 specific dependencies in poll.c make poll available for other platforms lacking it --- d782797aaf230e375d440d8ca84cd0465edd7ff4 diff --combined Makefile index a49d1db288,d1052a7490..f339f968f1 --- a/Makefile +++ b/Makefile @@@ -154,6 -154,11 +154,11 @@@ all: # # Define NO_MMAP if you want to avoid mmap. # + # Define NO_SYS_POLL_H if you don't have sys/poll.h. + # + # Define NO_POLL if you do not have or don't want to use poll(). + # This also implies NO_SYS_POLL_H. + # # Define NO_PTHREADS if you do not have or do not want to use Pthreads. # # Define NO_PREAD if you have a problem with pread() system call (e.g. @@@ -509,7 -514,6 +514,7 @@@ TEST_PROGRAMS_NEED_X += test-run-comman TEST_PROGRAMS_NEED_X += test-scrap-cache-tree TEST_PROGRAMS_NEED_X += test-sha1 TEST_PROGRAMS_NEED_X += test-sigchain +TEST_PROGRAMS_NEED_X += test-string-list TEST_PROGRAMS_NEED_X += test-subprocess TEST_PROGRAMS_NEED_X += test-svn-fe @@@ -604,10 -608,10 +609,10 @@@ LIB_H += compat/bswap. LIB_H += compat/cygwin.h LIB_H += compat/mingw.h LIB_H += compat/obstack.h + LIB_H += compat/poll/poll.h LIB_H += compat/precompose_utf8.h LIB_H += compat/terminal.h LIB_H += compat/win32/dirent.h - LIB_H += compat/win32/poll.h LIB_H += compat/win32/pthread.h LIB_H += compat/win32/syslog.h LIB_H += connected.h @@@ -1225,7 -1229,7 +1230,7 @@@ ifeq ($(uname_S),Windows NO_PREAD = YesPlease NEEDS_CRYPTO_WITH_SSL = YesPlease NO_LIBGEN_H = YesPlease - NO_SYS_POLL_H = YesPlease + NO_POLL = YesPlease NO_SYMLINK_HEAD = YesPlease NO_IPV6 = YesPlease NO_UNIX_SOCKETS = YesPlease @@@ -1266,7 -1270,7 +1271,7 @@@ 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/poll.o compat/win32/dirent.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 @@@ -1321,7 -1325,7 +1326,7 @@@ ifneq (,$(findstring MINGW,$(uname_S)) NO_PREAD = YesPlease NEEDS_CRYPTO_WITH_SSL = YesPlease NO_LIBGEN_H = YesPlease - NO_SYS_POLL_H = YesPlease + NO_POLL = YesPlease NO_SYMLINK_HEAD = YesPlease NO_UNIX_SOCKETS = YesPlease NO_SETENV = YesPlease @@@ -1356,7 -1360,7 +1361,7 @@@ COMPAT_CFLAGS += -DSTRIP_EXTENSION=\".exe\" COMPAT_OBJS += compat/mingw.o compat/winansi.o \ compat/win32/pthread.o compat/win32/syslog.o \ - compat/win32/poll.o compat/win32/dirent.o + compat/win32/dirent.o EXTLIBS += -lws2_32 PTHREAD_LIBS = X = .exe @@@ -1610,6 -1614,11 +1615,11 @@@ ifdef NO_GETTEX BASIC_CFLAGS += -DNO_GETTEXT USE_GETTEXT_SCHEME ?= fallthrough endif + ifdef NO_POLL + NO_SYS_POLL_H = YesPlease + COMPAT_CFLAGS += -DNO_POLL -Icompat/poll + COMPAT_OBJS += compat/poll/poll.o + endif ifdef NO_STRCASESTR COMPAT_CFLAGS += -DNO_STRCASESTR COMPAT_OBJS += compat/strcasestr.o