Constantin Rack
72898a0ecc
Merge pull request #1841 from opedroso/MAKE_CLEAN
...
Problem: Added "make clean" to Windows build scripts
2016-03-05 11:51:06 +01:00
Osiris
224c0670ee
Problem: Windows Build not using precompiled headers for all targets
...
Solution: Enabled precompiled header settings in all targets
Before build time: ~6min 49 secs
Stop Time: Fri 03/04/2016 8:29:50.13
Start Time: Fri 03/04/2016 8:23:00.28
After build time: ~4min 19 secs
Stop Time: Fri 03/04/2016 12:12:10.24
Start Time: Fri 03/04/2016 12:07:51.78
2016-03-05 04:47:08 -06:00
Osiris
09d003aac0
Problem: Added "make clean" to Windows build scripts
...
Solution: Added ability to do equivalent of a "make clean" by executing:
O:\git\libzmq\builds\msvc\build>buildall.bat clean
Start Time: Fri 03/04/2016 14:33:56.50
Cleaning without libsodium
Cleaning ..\vs2013\libzmq.sln... ()
Platform=x86
Configuration=DynDebug
Configuration=DynRelease
Configuration=LtcgDebug
Configuration=LtcgRelease
Configuration=StaticDebug
Configuration=StaticRelease
Platform=x64
Configuration=DynDebug
Configuration=DynRelease
Configuration=LtcgDebug
Configuration=LtcgRelease
Configuration=StaticDebug
Configuration=StaticRelease
Cleaning complete: ..\vs2013\libzmq.sln
Stop Time: Fri 03/04/2016 14:34:01.84
Start Time: Fri 03/04/2016 14:33:56.50
A clean takes ~5 secs to complete.
2016-03-05 04:37:01 -06:00
Constantin Rack
d315eea707
Merge pull request #1839 from opedroso/master
...
Problem: Visual Studio Toolset was incorrectly set in VCXPROJ files
2016-03-04 21:18:30 +01:00
Luca Boccassi
ee31ea1348
Merge pull request #1838 from obache/neatsrc/fix-c-comment-style
...
Problem: Fix C++ style comment usage in C source
2016-03-04 09:41:29 +00:00
Luca Boccassi
693d6384b6
Merge pull request #1837 from obache/neatsrc/fix-test-portability
...
Problem: Fix unportable `==` operator for `test`
2016-03-04 09:41:15 +00:00
Luca Boccassi
3c4377b11d
Merge pull request #1836 from obache/neatsrc/heimdal
...
Problem: Fix build with Heimdal krb5
2016-03-04 09:40:44 +00:00
OBATA Akio
8c7c8ece2d
Problem: Fix C++ style comment usage in C source
2016-03-04 17:26:02 +09:00
OBATA Akio
55dad06cce
Problem: Fix unportable ==
operator for test
2016-03-04 17:17:04 +09:00
OBATA Akio
09e868b743
Problem: Fix build with Heimdal krb5
...
Solution:
* Check gssapi/gssapi_generic.h header file, it is not in Heimdal.
* Check libgssapi too, libgssapi_krb5 is not separated in Heimdal.
2016-03-04 16:38:57 +09:00
Pieter Hintjens
36abdf7bd5
Merge pull request #1834 from garlick/config_nacl
...
minor automake fixes plus tweetnacl logic change
2016-03-02 23:16:25 +01:00
Jim Garlick
54389fefb5
Problem: AS_HELP_STRING improperly quoted
...
Brackets around defaults in configure --help strings for
--with-libsodium and --disable-curve were not displayed.
Solution: Add m4 quotes.
2016-03-02 12:11:08 -08:00
Jim Garlick
9d75a9c27d
Problem: AM_CONDITIONAL is used incorrectly
...
Move AM_CONDITIONAL for --disable-curve outside of shell
conditional (per sec 20.1 of automake manual) and fix its
second argument to be a test rather than a literal zero.
2016-03-02 11:28:42 -08:00
Luca Boccassi
ec6209737e
Merge pull request #1832 from hintjens/master
...
Problem: can't be sure crypto_box always returns 0
2016-03-01 15:53:26 +00:00
Pieter Hintjens
5b7bf7509f
Problem: can't be sure crypto_box always returns 0
...
Libsodium has started returning -1 in some cases.
Solution: allow and handle error returns from these calls.
Fixes #1831
2016-03-01 15:01:23 +01:00
Joe Eli McIlvain
708c2060ee
Merge pull request #1830 from stevenc99/master
...
include sys/ucred.h for struct ucred
2016-02-28 13:50:58 -08:00
Steven Chamberlain
dd8ccd5e0f
include sys/ucred.h for struct ucred
...
Platforms that have struct ucred, typically declare it in sys/ucred.h
2016-02-28 20:42:54 +00:00
Pieter Hintjens
d7691756e2
Merge pull request #1829 from dflupu/master
...
update Makefile.mingw32
2016-02-28 08:25:59 +01:00
Daniel Lupu
3190de8045
update Makefile.mingw32
2016-02-28 06:26:35 +02:00
Pieter Hintjens
8b32073c7b
Merge pull request #1826 from bluca/make_dist
...
Problem: make dist is borken
2016-02-22 13:36:21 +01:00
Luca Boccassi
b3b9cfd92e
Problem: packaging/redhat/zeromq.spec not ignored
...
Solution: add it to .gitignore
2016-02-22 11:59:51 +00:00
Luca Boccassi
f3686e34ff
Problem: make dist broken due to builds/msvc
...
Solution: change builds/msvc/Makefile.am to reference vcxproj files
instead of props files.
2016-02-22 11:58:36 +00:00
Luca Boccassi
391397571b
Problem: make dist broken due to builds/android
...
Solution: change builds/Makefile.am to reference builds/android
instead of builds/qt-android.
2016-02-22 11:58:00 +00:00
Luca Boccassi
8d811474d4
Problem: make dist broken due to builds/cmake
...
Solution: remove references to builds/cmake/Makefile* since they no
longer exist.
2016-02-22 11:57:09 +00:00
Constantin Rack
232094a09d
Merge pull request #1825 from bluca/whitespace_and_werror
2016-02-22 07:27:36 +01:00
Luca Boccassi
80e529a16a
Problem: all tests fail with assert in in_event
...
Solution: socket_base_t::in_event cannot do anything useful with
return status of process_commands. Asserting is the wrong solution,
as it is entirely valid to be interrupted or for the context to be
terminated, so discard the value.
2016-02-22 00:05:52 +00:00
Luca Boccassi
ae8efc21e8
Problem: nullptr is a reserved keyword in C++0x
...
Solution: use NULL instead to avoid build failure with older
compilers.
2016-02-21 23:54:18 +00:00
Luca Boccassi
7187169619
Problem: socket_poller_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:50:34 +00:00
Luca Boccassi
c84a52b11e
Problem: udp_engine_t fd cannot be init to NULL
...
Solution: initialize to -1, since fd is a file descriptor (int).
2016-02-21 23:47:44 +00:00
Luca Boccassi
1046f35930
Problem: udp_engine_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:46:51 +00:00
Luca Boccassi
24b84081be
Problem: socks_connecter_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:45:02 +00:00
Luca Boccassi
a6e49860f5
Problem: tcp_connecter_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:43:09 +00:00
Luca Boccassi
645c2be487
Problem: stream_engine_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:42:12 +00:00
Luca Boccassi
c21dd8d6a2
Problem: socket_base_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:41:02 +00:00
Luca Boccassi
acbf021a7c
Problem: reaper_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:39:09 +00:00
Luca Boccassi
779bed6315
Problem: encoder_base_t initialization reorder
...
Solution: initialize class variable in the same order as they are
defined.
2016-02-21 23:37:10 +00:00
Luca Boccassi
de46fc6ac9
Problem: can't do anything with load.sub ret val
...
Solution: don't store it in zmq::poller_base_t::adjust_load, as the
build with Werror=unused=variable will fail otherwise.
2016-02-21 23:28:54 +00:00
Luca Boccassi
14054d28ed
Problem: can't statically initialized pthread_t
...
Solution: remove statc initialization to NULL of thread.hpp pthread_t
descriptor. There is no portable way to statically initialize a
pthread_t variable.
2016-02-21 23:26:01 +00:00
Luca Boccassi
cf309a4e8c
Problem: maxfd definition depends on ifdef
...
Solution: initialise it inside an ifdef too
2016-02-21 23:17:28 +00:00
Luca Boccassi
d4c0716473
Problem: indentation should be 4 spaces, no tabs
...
Solution: fix it
2016-02-21 23:16:44 +00:00
Constantin Rack
406b5738b6
Merge pull request #1823 from opedroso/COVERITY
...
Problem: Several problems found by Coverity Static Analyzer
2016-02-21 22:56:46 +01:00
Osiris
b3d5fa63a0
Problem: Several problems found by Coverity Static Analyzer
...
Solution: The Coverity Static Code Analyzer was used on libzmq code and found
many issues with uninitialized member variables, some redefinition of variables
hidding previous instances of same variable name and a couple of functions
where return values were not checked, even though all other occurrences were
checked (e.g. init_size() return).
2016-02-21 15:49:47 -06:00
Osiris
4fca95a557
Problem: Visual Studio Toolset was incorrectly set in VCXPROJ files
...
Solution: Corrected Toolset setting where needed and inprove compilation speed
by adding defintion of WIN32_LEAN_AND_MEAN prior to any Windows specific
include files, which skips non-essential definitions during compilation.
2016-02-21 14:46:53 -06:00
Luca Boccassi
1ffd87453b
Merge pull request #1822 from opedroso/VS_TOOLSET
...
Problem: Visual Studio Toolset was incorrectly set in VCXPROJ files
2016-02-21 20:42:18 +00:00
Osiris
b4784d95bb
roblem: Visual Studio Toolset was incorrectly set in VCXPROJ files
...
Solution: Corrected Toolset setting where needed and inprove compilation speed
by adding defintion of WIN32_LEAN_AND_MEAN prior to any Windows specific
include files, which skips non-essential definitions during compilation.
2016-02-21 14:23:18 -06:00
Pieter Hintjens
c5d8353429
Merge pull request #1819 from bluca/C++11
...
Bump C/C++ standard version support to C11/C++11
2016-02-21 11:17:26 +01:00
Constantin Rack
15945dc59b
Merge pull request #1820 from obache/neatsrc/fix-netbsd-build
2016-02-20 10:04:24 +01:00
OBATA Akio
8eaa43d9d3
Problem: pgm/in.h is required on NetBSD too for struct group_req
2016-02-20 17:38:43 +09:00
Luca Boccassi
0782b58d9c
Problem: tweetnacl warnings override not needed
...
Solution: remove it
2016-02-19 21:52:01 +00:00
Luca Boccassi
7dfbab3f97
Problem: it's 2016 and we are building with C++98
...
Solution: bump to C++11 and C11 in autoconf
2016-02-19 21:49:38 +00:00
Luca Boccassi
80650ecfe2
Problem: need to check for C++ standard in cmake
...
Solution: use CheckCXXCompilerFlag to check for support for
-std=gnu++11
2016-02-19 21:49:38 +00:00
Luca Boccassi
b9f1e3ed61
Problem: writing autoconf macros is boring
...
Solution: import macros to check for compiler options from
autoconf-archive into the m4 subdir.
2016-02-19 21:41:24 +00:00
Luca Boccassi
266500a9ff
Merge pull request #1818 from opedroso/PRECOMPILED
...
Precompiled
2016-02-19 13:45:03 +00:00
Luca Boccassi
afdf27765e
Merge pull request #1817 from hintjens/master
...
Problem: tweetnacl gives many warnings on MSVC
2016-02-19 10:48:54 +00:00
Pieter Hintjens
8ae3671e88
Problem: tweetnacl gives many warnings on MSVC
...
Solution: disable the warnings on this file only
We use pragmas wrapped in compiler conditionals. This will need
extending to non-gcc/msvc compilers. We could also fix the warnings
in the code, though I suspect it's not really possible.
2016-02-19 10:52:31 +01:00
Osiris
79538ed651
Problem: Windows build not using precompiled header
...
Solution: Phase II - made compile using precompiled header
2016-02-18 11:35:35 -06:00
Osiris
4a5af9d58b
Problem: Precompiled headers not being used
...
Solution: Phase I - make precompiled.hpp be first file included in every source file
2016-02-18 10:56:52 -06:00
Luca Boccassi
325eb693a9
Merge pull request #1815 from hintjens/master
...
Problem: VC++ gives warnings on inet_addr
2016-02-18 10:51:23 +00:00
Pieter Hintjens
27fe489843
Problem: VC++ gives warnings on inet_addr
...
Solution: in project.gyp, define _WINSOCK_DEPRECATED_NO_WARNINGS
2016-02-18 11:46:43 +01:00
Pieter Hintjens
1c43aaa39a
Merge pull request #1814 from minrk/deprecate-zmq_utils.h
...
Deprecate zmq_utils.h
2016-02-18 10:38:31 +01:00
Min RK
d5b66295d4
Deprecate zmq_utils.h
...
instead of removing it, which breaks downstream builds.
2016-02-18 10:28:07 +01:00
Luca Boccassi
b20259809d
Merge pull request #1811 from somdoron/master
...
problem: dynamic cast is causing issue when compiling for nodejs
2016-02-17 17:41:26 +00:00
somdoron
352ae1468f
remove using of dynamic cast
2016-02-17 19:33:17 +02:00
Luca Boccassi
b168e1044b
Merge pull request #1810 from opedroso/IMPROVE_WINDOWS_BUILD
...
Problem: Windows build script requires edit for DevStudio version
2016-02-17 15:49:15 +00:00
Osiris
80024eca8c
Problem: Windows build script requires edit for DevStudio version
...
Solution: Use CMD.EXE environment variable to extract DevStudio version
number and build using it. This even supports machines with multiple
DevStudio versions installed, as long as the build for each version is
done on a separate window with the correct environment.
If multiple version builds are desired from a single CMD.EXE, edit the
buildall.bat file to uncomment the build statements for each specific
version desired.
2016-02-17 09:42:53 -06:00
Constantin Rack
7200f473ad
Merge pull request #1809 from hintjens/master
...
Number of fixes for gyp builds
2016-02-17 12:41:59 +01:00
Pieter Hintjens
94c7087e36
Problem: piece of garbage ended up in configure.ac
...
Solution: remove it
2016-02-17 12:40:44 +01:00
Pieter Hintjens
7129187f87
Problem: getting various warnings in tweetnacl
...
libzmq used to switch off pedantic checks when using tweetnacl. As
this is now the default, that means pedantic checks are always off.
This is not good.
Solution: in tweetnacl.c alone, use a GCC pragma to disable sign
comparison warnings. We could also clean the code up yet this is
simpler. In other code, we still want those warnings, hence I've
used a pragma rather than global compile option.
Second, use -Wno-long-long all the time, as this warning does not
work with a pragma.
I removed code that set -wno-long-long, for MinGW and Solaris.
Related problem 2: --with-relaxed is badly named
This option switches off pedantic checks, so should be called
--disable-pedantic. 'with' is for optional packages.
2016-02-17 12:06:45 +01:00
Pieter Hintjens
3443da216f
Problem: node-gyp defaults to -fno-rtti, which breaks libzmq
...
Solution: override in project.gyp, for Linux and OS/X.
2016-02-17 12:06:45 +01:00
Pieter Hintjens
c78e4f33a3
Problem: if src/platform.hpp still exists, gyp uses this
...
Gyp needs its own platform.hpp; there is no way to delete this
file automatically.
Solution: copy gyp's platform.hpp into src, so that things build
properly no matter what the starting state. If you build with gyp
and then try to build using autotools' makefile, you'll get an
error from the platform.hpp.
2016-02-17 12:06:45 +01:00
Pieter Hintjens
9bebd4dce9
Problem: local build should do its own .gitignore
...
Solution: add .gitignore in builds/gyp
2016-02-17 12:06:45 +01:00
Pieter Hintjens
8559770cf3
Problem: in builds/gyp, socket limit is 4K on Windows
...
Solution: raise to 16K
2016-02-17 12:06:45 +01:00
Pieter Hintjens
4a481c857f
Problem: socket limit is still 4K on Windows
...
Solution: fix in CMakeLists.txt (already fixed in builds/msvc)
2016-02-17 12:06:45 +01:00
Pieter Hintjens
df6876abde
Merge pull request #1805 from bluca/uninitialised_sockopt
...
Problem: curve keys getsockopt uninitialised read
2016-02-16 14:05:07 +01:00
Luca Boccassi
f86795350d
Problem: curve keys getsockopt uninitialised read
...
Solution: always initialised zmq::options_t class variables arrays to
avoid reading uninitialised data when CURVE is not yet configured and
a getsockopt ZMQ_CURVE_{SERVER | PUBLIC | SECRET]KEY is issued.
2016-02-16 12:00:55 +00:00
Pieter Hintjens
93f99d09f4
Merge pull request #1804 from bluca/test_fixes
...
Various test fixes
2016-02-13 19:37:08 +01:00
Luca Boccassi
facb512105
Problem: SETTLE_TIME is too short on slow systems
...
Solution: increase SETTLE_TIME from 50ms to 300ms to avoid failing on
slower environments like through Valgrind on slow VMs.
2016-02-13 18:17:36 +00:00
Luca Boccassi
217f6c438e
Problem: tests README does not document msleep
...
Solution: suggest to use the common approach of msleep (SETTLE_TIME)
after a connect if necessary, rather than reimplementing a different
way.
2016-02-13 18:04:25 +00:00
Luca Boccassi
706c3b7c4b
Problem: test_shutdown_stress_tipc broken on OSX/Cmake
...
Solution: include pthread.h in testutil.hpp, removed from
test_shutdown_stress_tipc in an earlier commit
2016-02-13 18:01:03 +00:00
Luca Boccassi
63a0924484
Problem: test_sockopt_hwm not renamed in gitignore
...
Solution: rename from test_socketopt_hwm to test_sockopt_hwm in
.gitignore too
2016-02-13 18:01:03 +00:00
Luca Boccassi
cb41201880
Problem: various tests fail in slow environments
...
Solution: add msleep (SETTLE_TIME) to test_immediate, test_spec_rep
and test_spec_router after the sockets are created and connected to
avoid failing when running in slower environment like through
Valgrind in underpowered VMs.
2016-02-13 18:01:03 +00:00
Luca Boccassi
4a84f8a02e
Problem: tests use various sleep patterns to wait
...
Solution: use msleep (SETTLE_TIME) everywhere when waiting for the
connections/sockets to be settled instead of a variety of patterns
and functions to make tests more coherent.
2016-02-13 18:01:03 +00:00
Luca Boccassi
955b51dfd2
Problem: test_msg_ffn uses unitialised memory
...
Solution: memset temporary buffer before use to reduce Valgrind noise
2016-02-13 16:28:48 +00:00
Luca Boccassi
240190131c
Problem: test_srcfd uses unitialised memory
...
Solution: memset temporary buffer before use to reduce Valgrind noise
2016-02-13 15:39:30 +00:00
Luca Boccassi
302c7bee50
Problem: test_fork does not clean up at exit
...
Solution: close socket and destroy context to reduce Valgrind noise
2016-02-13 11:35:51 +00:00
Luca Boccassi
f87888f80c
Problem: test_router_mandatory_hwm uses unitialised memory
...
Solution: memset temporary buffer before use to reduce Valgrind noise
2016-02-13 11:35:51 +00:00
Luca Boccassi
cffc653535
Problem: test_pre_allocated_fd_tcp leaks addrinfo
...
Solution: free addrinfo to reduce Valgrind noise
2016-02-13 11:35:51 +00:00
Luca Boccassi
05ad915265
Problem: test_term_endpoint does not clean up at exit
...
Solution: close socket and destroy context to reduce Valgrind noise
2016-02-13 11:35:51 +00:00
Luca Boccassi
f8f8043222
Problem: test_msg_ffn uses unitialised memory
...
Solution: pass correct size to memcmp to avoid reading uninitialised
areas of the buffer.
2016-02-13 11:35:51 +00:00
Luca Boccassi
e177512c82
Problem: test_system does not clean up at exit
...
Solution: close socket and destroy context to reduce Valgrind noise
2016-02-13 11:35:51 +00:00
Constantin Rack
18dcc32ac3
Merge pull request #1803 from bluca/ci_default_only_on_secondary
...
Problem: too many CI builds
2016-02-13 01:18:47 +01:00
Luca Boccassi
9a6e10406d
Problem: too many CI builds
...
Solution: remove libsodium and no curve builds from cmake and android
2016-02-12 23:22:51 +00:00
Luca Boccassi
930a24425c
Merge pull request #1802 from hintjens/master
...
Problem: tests don't build on Windows
2016-02-12 15:28:09 +00:00
Pieter Hintjens
9c0d176d68
Problem: tests don't build on Windows
...
There were numerous small issues with test cases:
- some lacked the right source file header
- some were not portable at all
- some were using internal libzmq APIs (headers)
Solution: fixed and cleaned up.
2016-02-12 16:12:44 +01:00
Luca Boccassi
0dbb918244
Merge pull request #1800 from hintjens/master
...
Cleaning up Windows build for gyp
2016-02-12 15:00:24 +00:00
Pieter Hintjens
bbcc79d188
Problem: tests don't build on Windows
...
There were numerous small issues with test cases:
- some lacked the right source file header
- some were not portable at all
- some were using internal libzmq APIs (headers)
Solution: fixed and cleaned up.
2016-02-12 15:48:37 +01:00
Pieter Hintjens
06acd76a21
Problem: people don't know how to write test cases
...
Solution: document the minimum rules in README.md
2016-02-12 15:48:37 +01:00
Pieter Hintjens
d148c3ea5d
Problem: no clue how to run gyp on Windows
...
Solution: offer a build.bat to help the user.
2016-02-12 15:48:37 +01:00
Luca Boccassi
8bee4e2547
Merge pull request #1799 from hintjens/master
...
Making gyp builds work
2016-02-12 10:40:43 +00:00
Pieter Hintjens
8230c0d396
Problem: gyp does not build tests
...
Solution: it's a lot of work to define the tests in project.gyp
so I did this using gsl to generate the JSON, from a small XML
list of the test cases.
To keep this, and the hundreds of .mk files, away from the root
directory, I've moved the gyp files into builds/gyp, where you
would run them.
It all seems to work now. Next up, OS/X and Windows :)
2016-02-12 11:31:38 +01:00