From: Ben Noordhuis Date: Wed, 27 Mar 2013 23:28:45 +0000 (+0100) Subject: deps: upgrade libuv to 7514149 X-Git-Tag: v0.10.2~9 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=982877ec856a1ad15108bbf2063e4a46d32742e4;p=platform%2Fupstream%2Fnodejs.git deps: upgrade libuv to 7514149 --- diff --git a/deps/uv/.mailmap b/deps/uv/.mailmap index 2d98623..560a650 100644 --- a/deps/uv/.mailmap +++ b/deps/uv/.mailmap @@ -1,13 +1,16 @@ -# update AUTHORS with: -# git log --all --reverse --format='%aN <%aE>' | perl -ne 'BEGIN{print "# Authors ordered by first contribution.\n"} print unless $h{$_}; $h{$_} = 1' > AUTHORS - - - - -San-Tai Hsu -Isaac Z. Schlueter -Saúl Ibarra Corretgé -Yuki OKUMURA +Alan Gutierrez +Bert Belder +Bert Belder +Brandon Philips +Brian White Frank Denis +Isaac Z. Schlueter +Robert Mustacchi +Ryan Dahl Ryan Emery +San-Tai Hsu +Saúl Ibarra Corretgé +Shigeki Ohtsu +Timothy J. Fontaine Yasuhiro Matsumoto +Yuki Okumura diff --git a/deps/uv/AUTHORS b/deps/uv/AUTHORS index d28143b..435f734 100644 --- a/deps/uv/AUTHORS +++ b/deps/uv/AUTHORS @@ -28,7 +28,7 @@ Marek Jelen Fedor Indutny Saúl Ibarra Corretgé Felix Geisendörfer -Yuki OKUMURA +Yuki Okumura Roman Shtylman Frank Denis Carter Allen @@ -44,7 +44,6 @@ Dan VerWeire Brandon Benvie Brandon Philips Nathan Rajlich -Brandon Philips Charlie McConnell Vladimir Dronnikov Aaron Bieber @@ -54,8 +53,29 @@ Erik Dubbelboer Keno Fischer Ira Cooper Andrius Bentkus -Brian White Iñaki Baz Castillo Mark Cavage George Yohng Xidorn Quan +Roman Neuhauser +Shuhei Tanuma +Bryan Cantrill +Trond Norbye +Tim Holy +Prancesco Pertugio +Leonard Hecker +Andrew Paprocki +Luigi Grilli +Shannen Saez +Artur Adib +Hiroaki Nakamura +Ting-Yu Lin +Stephen Gallagher +Shane Holloway +Andrew Shaffer +Vlad Tudose +Ben Leslie +Tim Bradshaw +Timothy J. Fontaine +Marc Schlaich +Brian Mazza diff --git a/deps/uv/ChangeLog b/deps/uv/ChangeLog new file mode 100644 index 0000000..034653d --- /dev/null +++ b/deps/uv/ChangeLog @@ -0,0 +1,28 @@ +2013.03.25, Version 0.10.2 (Stable) + +This is the first officially versioned release of libuv. Starting now +libuv will make releases independently of Node.js. + +Changes since Node.js v0.10.0: + +* test: add tap output for windows (Timothy J. Fontaine) + +* unix: fix uv_tcp_simultaneous_accepts() logic (Ben Noordhuis) + +* include: bump UV_VERSION_MINOR (Ben Noordhuis) + +* unix: improve uv_guess_handle() implementation (Ben Noordhuis) + +* stream: run try_select only for pipes and ttys (Fedor Indutny) + +Changes since Node.js v0.10.1: + +* build: rename OS to PLATFORM (Ben Noordhuis) + +* unix: make uv_timer_init() initialize repeat (Brian Mazza) + +* unix: make timers handle large timeouts (Ben Noordhuis) + +* build: add OBJC makefile var (Ben Noordhuis) + +* Add `uv_version()` and `uv_version_string()` APIs (Bert Belder) diff --git a/deps/uv/README.md b/deps/uv/README.md index cdddbd2..54740ca 100644 --- a/deps/uv/README.md +++ b/deps/uv/README.md @@ -64,7 +64,7 @@ To build via Makefile simply execute: MinGW users should run this instead: - make OS=mingw + make PLATFORM=mingw Out-of-tree builds are supported: diff --git a/deps/uv/config-mingw.mk b/deps/uv/config-mingw.mk index 400a6c4..84df27a 100644 --- a/deps/uv/config-mingw.mk +++ b/deps/uv/config-mingw.mk @@ -35,7 +35,7 @@ RUNNER_LDFLAGS=$(LDFLAGS) RUNNER_LIBS=-lws2_32 -lpsapi -liphlpapi RUNNER_SRC=test/runner-win.c -libuv.a: $(WIN_OBJS) src/fs-poll.o src/inet.o src/uv-common.o +libuv.a: $(WIN_OBJS) src/fs-poll.o src/inet.o src/uv-common.o src/version.o $(AR) rcs $@ $^ src/%.o: src/%.c include/uv.h include/uv-private/uv-win.h diff --git a/deps/uv/config-unix.mk b/deps/uv/config-unix.mk index b5eeec1..f9f2c15 100644 --- a/deps/uv/config-unix.mk +++ b/deps/uv/config-unix.mk @@ -18,6 +18,8 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. +OBJC ?= $(CC) + E= CSTDFLAG=--std=c89 -pedantic -Wall -Wextra -Wno-unused-parameter CFLAGS += -g @@ -53,6 +55,7 @@ OBJS += src/unix/udp.o OBJS += src/fs-poll.o OBJS += src/uv-common.o OBJS += src/inet.o +OBJS += src/version.o ifeq (sunos,$(PLATFORM)) CPPFLAGS += -D__EXTENSIONS__ -D_XOPEN_SOURCE=500 @@ -145,7 +148,7 @@ include/uv-private/uv-unix.h: \ src/unix/internal.h: src/unix/linux-syscalls.h src/.buildstamp src/unix/.buildstamp test/.buildstamp: - mkdir -p $(dir $@) + mkdir -p $(@D) touch $@ src/unix/%.o src/unix/%.pic.o: src/unix/%.c include/uv.h include/uv-private/uv-unix.h src/unix/internal.h src/unix/.buildstamp @@ -161,4 +164,4 @@ clean-platform: $(RM) test/run-{tests,benchmarks}.dSYM $(OBJS) $(OBJS:%.o=%.pic.o) %.pic.o %.o: %.m - $(CC) $(CPPFLAGS) $(CFLAGS) -c $^ -o $@ + $(OBJC) $(CPPFLAGS) $(CFLAGS) -c $^ -o $@ diff --git a/deps/uv/include/uv.h b/deps/uv/include/uv.h index ea11a13..553fc13 100644 --- a/deps/uv/include/uv.h +++ b/deps/uv/include/uv.h @@ -229,6 +229,20 @@ typedef enum { /* + * Returns the libuv version packed into a single integer. 8 bits are used for + * each component, with the patch number stored in the 8 least significant + * bits. E.g. for libuv 1.2.3 this would return 0x010203. + */ +UV_EXTERN unsigned int uv_version(void); + +/* + * Returns the libuv version number as a string. For non-release versions + * "-pre" is appended, so the version number could be "1.2.3-pre". + */ +UV_EXTERN const char* uv_version_string(void); + + +/* * This function must be called before any other functions in libuv. * * All functions besides uv_run() are non-blocking. diff --git a/deps/uv/src/unix/stream.c b/deps/uv/src/unix/stream.c index d00fe23..d95fa0d 100644 --- a/deps/uv/src/unix/stream.c +++ b/deps/uv/src/unix/stream.c @@ -131,7 +131,6 @@ static void uv__stream_osx_select(void* arg) { char buf[1024]; fd_set sread; fd_set swrite; - fd_set serror; int events; int fd; int r; @@ -154,17 +153,15 @@ static void uv__stream_osx_select(void* arg) { /* Watch fd using select(2) */ FD_ZERO(&sread); FD_ZERO(&swrite); - FD_ZERO(&serror); if (uv_is_readable(stream)) FD_SET(fd, &sread); if (uv_is_writable(stream)) FD_SET(fd, &swrite); - FD_SET(fd, &serror); FD_SET(s->int_fd, &sread); /* Wait indefinitely for fd events */ - r = select(max_fd + 1, &sread, &swrite, &serror, NULL); + r = select(max_fd + 1, &sread, &swrite, NULL, NULL); if (r == -1) { if (errno == EINTR) continue; @@ -203,8 +200,6 @@ static void uv__stream_osx_select(void* arg) { events |= UV__POLLIN; if (FD_ISSET(fd, &swrite)) events |= UV__POLLOUT; - if (FD_ISSET(fd, &serror)) - events |= UV__POLLERR; uv_mutex_lock(&s->mutex); s->events |= events; @@ -249,7 +244,8 @@ static void uv__stream_osx_select_cb(uv_async_t* handle, int status) { s->events = 0; uv_mutex_unlock(&s->mutex); - assert(0 == (events & UV__POLLERR)); + assert(events != 0); + assert(events == (events & (UV__POLLIN | UV__POLLOUT))); /* Invoke callback on event-loop */ if ((events & UV__POLLIN) && uv__io_active(&stream->io_watcher, UV__POLLIN)) diff --git a/deps/uv/src/version.c b/deps/uv/src/version.c new file mode 100644 index 0000000..6471267 --- /dev/null +++ b/deps/uv/src/version.c @@ -0,0 +1,60 @@ +/* Copyright Joyent, Inc. and other Node contributors. All rights reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to + * deal in the Software without restriction, including without limitation the + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ + + + /* + * Versions with an even minor version (e.g. 0.6.1 or 1.0.4) are API and ABI + * stable. When the minor version is odd, the API can change between patch + * releases. + */ + +#define UV_VERSION_MAJOR 0 +#define UV_VERSION_MINOR 10 +#define UV_VERSION_PATCH 3 +#define UV_VERSION_IS_RELEASE 0 + + +#define UV_VERSION ((UV_VERSION_MAJOR << 16) | \ + (UV_VERSION_MINOR << 8) | \ + (UV_VERSION_PATCH)) + +#define UV_STRINGIFY(v) UV_STRINGIFY_HELPER(v) +#define UV_STRINGIFY_HELPER(v) #v + +#define UV_VERSION_STRING_BASE UV_STRINGIFY(UV_VERSION_MAJOR) "." \ + UV_STRINGIFY(UV_VERSION_MINOR) "." \ + UV_STRINGIFY(UV_VERSION_PATCH) + +#if UV_VERSION_IS_RELEASE +# define UV_VERSION_STRING UV_VERSION_STRING_BASE +#else +# define UV_VERSION_STRING UV_VERSION_STRING_BASE "-pre" +#endif + + +unsigned int uv_version(void) { + return UV_VERSION; +} + + +const char* uv_version_string(void) { + return UV_VERSION_STRING; +} diff --git a/deps/uv/uv.gyp b/deps/uv/uv.gyp index 0810bcc..db90ee9 100644 --- a/deps/uv/uv.gyp +++ b/deps/uv/uv.gyp @@ -56,6 +56,7 @@ 'src/inet.c', 'src/uv-common.c', 'src/uv-common.h', + 'src/version.c' ], 'conditions': [ [ 'OS=="win"', { @@ -114,7 +115,6 @@ '-pedantic', '-Wall', '-Wextra', - '-Wstrict-aliasing', '-Wno-unused-parameter', ], 'sources': [ @@ -180,6 +180,11 @@ '_DARWIN_USE_64_BIT_INODE=1', ] }], + [ 'OS!="mac"', { + # Enable on all platforms except OS X. The antique gcc/clang that + # ships with Xcode emits waaaay too many false positives. + 'cflags': [ '-Wstrict-aliasing' ], + }], [ 'OS=="linux"', { 'sources': [ 'src/unix/linux-core.c', @@ -424,5 +429,3 @@ } ] } - -