Commit Graph

1081 Commits

Author SHA1 Message Date
Martin Lucina
abc8b5e40c Update NEWS file for 2.1.0 release
Signed-off-by: Martin Lucina <mato@kotelna.sk>
2010-12-01 11:55:56 +01:00
Steven McCoy
4a3ed39a22 Bump OpenPGM to 5.0.92.
Signed-off-by: Steven McCoy <steven.mccoy@miru.hk>
2010-12-01 11:52:05 +01:00
Martin Lucina
520d621016 Bump ABI version to 1:0:0 for ZeroMQ 2.1.0 release
Signed-off-by: Martin Lucina <mato@kotelna.sk>
2010-12-01 11:11:25 +01:00
Martin Lucina
b70d628fad Documentation updates for 2.1
- Clarify ZMQ_LINGER, zmq_close (), zmq_term () relationship
- New socket options
- Clarify thread safety of sockets and migration between threads
- Other minor and spelling fixes

Signed-off-by: Martin Lucina <mato@kotelna.sk>
2010-12-01 10:57:37 +01:00
Mikko Koppanen
5bb0a339be Prefix variables with "ac_zmq_"
- Added a macro for checking clang compiler
 - Moved basic compiler checks to a macro
 - Added a macro for checking if compiler supports a flag
 - Added --enable-debug flag
 - Added a macro for running normal autoconf check with compiler flags
 - Added a macro for checking for verbose flag for different compilers (-Wall)
 - Added a macro for turning on strict standards compliance
 - Added a macro for turning warnings to errors
 - Added a macro for checking if compiler supports given pragma
 - Most of the flags now go through checks if the compilers supports them
   rather than enumerating different compilers
 - Added DSO symbol visibility for sun compiler
 - Enabled verbose mode for sun compiler
 - Fixed build for ICC 12.x by adding -wd279 to size_t checks
 - Removed pkg-config checks as those don't seem to be used anywhere

Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-12-01 10:33:07 +01:00
Martin Sustrik
17d7e6ede0 Merge branch 'maint'
* maint:
  Remove unnecessary cast in kevent_delete

Conflicts:
	src/kqueue.cpp

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-12-01 10:27:24 +01:00
Martin Lucina
289b1f5ced Remove unnecessary cast in kevent_delete
Fixes the build on NetBSD where the compiler complains about casting NULL
to (int).

Signed-off-by: Martin Lucina <mato@kotelna.sk>
2010-12-01 10:25:31 +01:00
Steven McCoy
28db150aaf Fix thread thunker scope for MSVC.
Signed-off-by: Steven McCoy <steven.mccoy@miru.hk>
2010-11-29 10:52:22 +01:00
Martin Sustrik
325dd2f091 Functions passed to pthread_create are declared as extern "C"
So far these were declared as C++ static functions which
was incorrect and caused warnings with SunStudio.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-27 22:19:43 +01:00
Martin Sustrik
0bc2a05d84 .gitignore modified to ignore test executables
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-27 12:51:43 +01:00
Martin Lucina
c9584096e0 Control symbol exports using -fvisibility
On systems using GCC 4.0 or newer which support symbol visibility in shared
libraries, use -fvisibility=hidden and only export explict API functions
defined in zmq.cpp. We do not enable -fvisibility on MinGW since this uses a
separate mechanism (__declspec).

Signed-off-by: Martin Lucina <mato@kotelna.sk>
2010-11-25 17:12:31 +01:00
Martin Sustrik
734624be76 Typo fixed in a comment.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-25 14:05:43 +01:00
Sebastian Otaegui
92618fd99a Small fix for the rhel6 spec
Signed-off-by: Sebastian Otaegui <feniix@gmail.com>
2010-11-25 14:04:53 +01:00
Martin Sustrik
a689047de0 Merge branch 'maint'
* maint:
  Mikko Koppanen becomes a maintainer of the build system.
2010-11-22 16:07:15 +01:00
Martin Sustrik
83d9af9951 Mikko Koppanen becomes a maintainer of the build system.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-22 16:06:20 +01:00
Martin Sustrik
ac40680ea2 Problem with blob_t initialisation fixed.
HP's version of STL doesn't allow for initialisation of basic_string
(blob_t) using NULL pointer, while SGI's implementation is OK with
that. Fixed.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-19 12:35:06 +01:00
Mikko Koppanen
edf7c18d79 Add a check that the compiler actually works.
The patch tests that the C and C++ compilers actually exist
and work. autoconf seems to default to 'g++' when C++ compiler is not
found, which causes the following error (when the compiler isn't
there):

checking for uuid_generate in -luuid... no
configure: error: cannot link with -luuid, install uuid-dev.

The config.log contains the real error message "g++ command not found"
but the error message shown to the user is misleading.

Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-11-19 09:10:26 +01:00
Mikko Koppanen
945c931daf Run autoupdate on the configure.in
I ran autoupdate on the configure.in, which generated most of the
patch attached. There is also a small manual fix in which removes the
warning "Remember to add LT_INIT to configure.in" which I assume is
because AC_PROG_LIBTOOL was called inside a macro.

Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-11-18 11:51:27 +01:00
Mikko Koppanen
72a7b93f12 Allow building without documentation.
Allows building without documentation even if asciidoc and xmlto are
installed. This eases up working with the build system because doc
generation take quite a while on repeated builds.

Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-11-17 15:10:43 +01:00
Mikko Koppanen
c86375831d Remove unneeded substitutions
Couldn't find a place where these substs were actually used

Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-11-17 15:09:06 +01:00
Mikko Koppanen
b83d0a1bc0 Remove unnecessary conditional
This conditional is unnecessary as BUILD_PGM can be negated in the test.

Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-11-17 15:07:59 +01:00
Mikko Koppanen
925595259b MinGW32 build fixes
After long discussions in IRC we came to conclusion that there is no
elegant way to handle static builds with MinGW32. This patch sets
AC_DISABLE_STATIC by default on MinGW32 and Cygwin

Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-11-17 15:06:51 +01:00
Mikko Koppanen
3dbd5d5872 Fix mingw32 build
MinGW32 defines __int64_t as long long, which causes the build to fail
unless -Wno-long-long is used. In addition the shutdown_stress test
isn't currently compatible with Win.

Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-11-17 15:05:01 +01:00
Martin Sustrik
34f50a6840 Merge branch 'maint'
* maint:
  FD_SETSIZE defaults to 1024 in MSVC build

Conflicts:
	builds/msvc/libzmq/libzmq.vcproj

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-16 14:26:04 +01:00
Martin Sustrik
bd0ecf4784 FD_SETSIZE defaults to 1024 in MSVC build
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-16 14:15:29 +01:00
Martin Sustrik
152c64f25d FD_SETSIZE defaults to 1024 in MSVC build
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-16 14:04:55 +01:00
Mikko Koppanen
da3327cf87 Build refactoring
Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-11-15 17:02:36 +01:00
Martin Sustrik
f77c8ca47f Merge branch 'maint'
* maint:
  Couple of patches for AIX build
2010-11-13 18:16:13 +01:00
Martin Sustrik
ffcb0baa73 Couple of patches for AIX build
- RAND_bytes function resides in crypto library
- pollfd on AIX used 'reqevents' instead of events and 'retnevents'
  instead of 'revents'

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-13 18:08:18 +01:00
Chia-liang Kao
a2500ae348 Fix a bug that zmq_poll's select backend spins when timeout=-1, due to
ptimeout not properly recalculated after first pass.

Signed-off-by: Chia-liang Kao <clkao@clkao.org>
2010-11-12 19:16:00 +01:00
Martin Sustrik
8abe67357a Merge branch 'maint'
* maint:
  Fix socket_t::recv() hang scenario where initial call to process_commands() eats signal

Conflicts:
	src/socket_base.cpp
2010-11-12 14:47:26 +01:00
Marc Rossi
f7123de943 Fix socket_t::recv() hang scenario where initial call to process_commands() eats signal
Added block boolean var to second process_commands() invocation for blocking sockets
instead of always using true.  This prevents the process_commands() call from hanging
when a message is received with an empty queue after the call to xrecv() but
prior to the initial call to process_commands() invoked when ++ticks == inbound_poll_rate.

Signed-off-by: Marc Rossi <mrossi19@gmail.com>
2010-11-12 14:38:25 +01:00
Martin Sustrik
c0217027cc Coding style cleanup in mailbox.cpp
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-06 08:02:14 +01:00
Martin Sustrik
9da84a5239 signaler renamed to mailbox
For historical reasons queue to transfer commands between
threads was called 'signaler'. Given that it was used to
pass commands rather than signals it was renamed to 'mailbox',
see Erlang mailboxes.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-05 17:39:51 +01:00
Martin Sustrik
9cfdb441f4 slots renamed to tids
Threads were so far identified by integers called 'slots'.
This patch renames them to more comprehensible 'tid's (thread IDs).

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-05 16:38:52 +01:00
Martin Sustrik
623a9c9f1b Jacob Rideout added to the AUTGORS file.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-04 21:23:07 +01:00
Jacob Rideout
0ada4f8e30 Fix documentation typos
Signed-off-by: Jacob Rideout <jacob.rideout@returnpath.net>
2010-11-04 21:21:01 +01:00
Martin Lucina
1b39bcd883 Automatically resize signalling socket buffer if full
If the socketpair used by signaler_t fills up, this can lead to deadlock.
This patch provides partial resolution by attempting to resize SO_SNDBUF on
the writer side, and if that fails we shall at least assert rather than
hang.

I've also refactored the signaler_t code to make the platform-dependent
parts clearer and have tested both the MSG_DONTWAIT and standard POSIX path
in recv.

The Win32 implementation currently does not implement resizing as I'm not
convinced that it's safe, but it will also assert like other platforms if
signaler_t::send() cannot succeed.

The OpenVMS implementation has been carried forward but is untested.

Signed-off-by: Martin Lucina <mato@kotelna.sk>
2010-11-04 17:54:47 +01:00
Martin Sustrik
756f7df8c8 Previous FD_STSIZE patch reverted.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-04 16:11:04 +01:00
Martin Sustrik
2246689c8f FD_SETSIZE for internal polling defaults to 1024
If, when compiling 0MQ you don't set FD_SETSIZE,
it defaults to 1024 rather than to 64.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-04 13:12:40 +01:00
Martin Sustrik
b90e621329 minor typo fixed
Devpoll polling mechanism used ZMQ_HAVE_SOLRIS instead of
ZMQ_HAVE_SOLARIS in one case. Fixed.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-04 10:01:58 +01:00
Martin Sustrik
d4a41067d3 HP-UX has no OPEN_MAX defined
devpoll_t used this constant to determine how many events to
retrieve from the poller in one go. The implementation was
changed not to depend on this constant.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-02 14:27:24 +01:00
Martin Sustrik
de93f6359f crypto library is needed on HP-UX to generate UUIDs
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-02 13:30:20 +01:00
Martin Sustrik
dbcd382524 Merge branch 'maint'
* maint:
  Add INSTALL to Git, thus making it a normal file
2010-11-01 14:13:36 +01:00
Martin Lucina
eb83678b2b Add INSTALL to Git, thus making it a normal file
INSTALL gets added in somewhat magically by automake, or not. Adding it into
Git ensures it's always included in the distribution.

Signed-off-by: Martin Lucina <mato@kotelna.sk>
2010-11-01 14:12:33 +01:00
Mikael Helbo Kjaer
0ad71f88fe select now uses Erase-Remove idiom for retired fds
Signed-off-by: Mikael Helbo Kjaer <mhk@designtech.dk>
2010-11-01 12:54:58 +01:00
Martin Sustrik
085b709021 Documentation for zmq_close and zmq_term fixed.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-10-30 18:17:53 +02:00
Martin Sustrik
3d8eb071a2 Coding style fixed for pgm_socket
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-10-30 16:17:08 +02:00
Martin Sustrik
b358df9fff Name of "GNU Lesser Public License" corrected.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-10-30 15:08:28 +02:00
Martin Sustrik
3d01b929fe Peter Bourgon added to the AUTHORS file
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-10-29 08:19:07 +02:00