Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
L
libzmq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
libzmq
Commits
9b795de4
Commit
9b795de4
authored
Jun 18, 2011
by
Steven McCoy
Committed by
Martin Sustrik
Jun 18, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Refactor Windows versioning and WinSock usage.Signed-off-by: Steven McCoy <steven.mccoy@miru.hk>
parent
dc660535
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
140 additions
and
42 deletions
+140
-42
zmq.h
include/zmq.h
+1
-1
ctx.cpp
src/ctx.cpp
+7
-7
select.cpp
src/select.cpp
+5
-6
windows.hpp
src/windows.hpp
+127
-28
No files found.
include/zmq.h
View file @
9b795de4
...
...
@@ -28,7 +28,7 @@ extern "C" {
#include <errno.h>
#include <stddef.h>
#if defined _WIN32
#include
"winsock2.h"
#include
<winsock2.h>
#endif
/* Handle DSO symbol visibility */
...
...
src/ctx.cpp
View file @
9b795de4
...
...
@@ -18,24 +18,24 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "platform.hpp"
#if defined ZMQ_HAVE_WINDOWS
#include "windows.hpp"
#else
#include <unistd.h>
#endif
#include <new>
#include <string.h>
#include "ctx.hpp"
#include "socket_base.hpp"
#include "io_thread.hpp"
#include "platform.hpp"
#include "reaper.hpp"
#include "pipe.hpp"
#include "err.hpp"
#include "msg.hpp"
#if defined ZMQ_HAVE_WINDOWS
#include "windows.h"
#else
#include "unistd.h"
#endif
zmq
::
ctx_t
::
ctx_t
(
uint32_t
io_threads_
)
:
tag
(
0xbadcafe0
),
terminating
(
false
)
...
...
src/select.cpp
View file @
9b795de4
...
...
@@ -19,12 +19,8 @@
*/
#include "platform.hpp"
#include <string.h>
#include <algorithm>
#ifdef ZMQ_HAVE_WINDOWS
#include "winsock2.h"
#if defined ZMQ_HAVE_WINDOWS
#include "windows.hpp"
#elif defined ZMQ_HAVE_HPUX
#include <sys/param.h>
#include <sys/types.h>
...
...
@@ -36,6 +32,9 @@
#include <sys/select.h>
#endif
#include <string.h>
#include <algorithm>
#include "select.hpp"
#include "err.hpp"
#include "config.hpp"
...
...
src/windows.hpp
View file @
9b795de4
...
...
@@ -21,58 +21,157 @@
#ifndef __ZMQ_WINDOWS_HPP_INCLUDED__
#define __ZMQ_WINDOWS_HPP_INCLUDED__
//
The purpose of this header file is to turn on only the items actually needed
// on the windows platform.
//
The purpose of this header file is to turn on only the items actually
//
needed
on the windows platform.
#define _WINSOCKAPI_
#ifndef NOMINMAX
#define NOMINMAX // No min and max functions, these clash with C++.
#endif
// Disable deprecation warnings.
#define _CRT_SECURE_NO_WARNINGS
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
#ifndef NO
USER // No USER defines and routines.
#define NO
USER
#ifndef NO
GDICAPMASKS
#define NO
GDICAPMASKS // CC_*, LC_*, PC_*, CP_*, TC_*, RC_
#endif
#ifndef NO
MCX // No Modem Configuration Extensions.
#define NO
MCX
#ifndef NO
VIRTUALKEYCODES
#define NO
VIRTUALKEYCODES // VK_*
#endif
#ifndef NO
IME // No Input Method Editor.
#define NO
IME
#ifndef NO
WINMESSAGES
#define NO
WINMESSAGES // WM_*, EM_*, LB_*, CB_*
#endif
#ifndef NO
SOUND // No Sound driver routines.
#define NO
SOUND
#ifndef NO
WINSTYLES
#define NO
WINSTYLES // WS_*, CS_*, ES_*, LBS_*, SBS_*, CBS_*
#endif
#ifdef ZMQ_HAVE_MINGW32
#ifdef WINVER
#undef WINVER
#ifndef NOSYSMETRICS
#define NOSYSMETRICS // SM_*
#endif
#ifndef NOMENUS
#define NOMENUS // MF_*
#endif
#ifndef NOICONS
#define NOICONS // IDI_*
#endif
#ifndef NOKEYSTATES
#define NOKEYSTATES // MK_*
#endif
#ifndef NOSYSCOMMANDS
#define NOSYSCOMMANDS // SC_*
#endif
#ifndef NORASTEROPS
#define NORASTEROPS // Binary and Tertiary raster ops
#endif
#ifndef NOSHOWWINDOW
#define NOSHOWWINDOW // SW_*
#endif
#ifndef OEMRESOURCE
#define OEMRESOURCE // OEM Resource values
#endif
#ifndef NOATOM
#define NOATOM // Atom Manager routines
#endif
#ifndef NOCLIPBOARD
#define NOCLIPBOARD // Clipboard routines
#endif
#define WINVER 0x0501
#ifndef NOCOLOR
#define NOCOLOR // Screen colors
#endif
#ifndef NOCTLMGR
#define NOCTLMGR // Control and Dialog routines
#endif
#ifndef NODRAWTEXT
#define NODRAWTEXT // DrawText() and DT_*
#endif
#ifndef NOGDI
#define NOGDI // All GDI defines and routines
#endif
#ifndef NOKERNEL
#define NOKERNEL // All KERNEL defines and routines
#endif
#ifndef NOUSER
#define NOUSER // All USER defines and routines
#endif
#ifndef NONLS
#define NONLS // All NLS defines and routines
#endif
#ifndef NOMB
#define NOMB // MB_* and MessageBox()
#endif
#ifndef NOMEMMGR
#define NOMEMMGR // GMEM_*, LMEM_*, GHND, LHND, associated routines
#endif
#ifndef NOMETAFILE
#define NOMETAFILE // typedef METAFILEPICT
#endif
#ifndef NOMINMAX
#define NOMINMAX // Macros min(a,b) and max(a,b)
#endif
#ifndef NOMSG
#define NOMSG // typedef MSG and associated routines
#endif
#ifndef NOOPENFILE
#define NOOPENFILE // OpenFile(), OemToAnsi, AnsiToOem, and OF_*
#endif
#ifndef NOSCROLL
#define NOSCROLL // SB_* and scrolling routines
#endif
#ifndef NOSERVICE
#define NOSERVICE // All Service Controller routines, SERVICE_ equates, etc.
#endif
#ifndef NOSOUND
#define NOSOUND // Sound driver routines
#endif
#ifndef NOTEXTMETRIC
#define NOTEXTMETRIC // typedef TEXTMETRIC and associated routines
#endif
#ifndef NOWH
#define NOWH // SetWindowsHook and WH_*
#endif
#ifndef NOWINOFFSETS
#define NOWINOFFSETS // GWL_*, GCL_*, associated routines
#endif
#ifndef NOCOMM
#define NOCOMM // COMM driver routines
#endif
#ifndef NOKANJI
#define NOKANJI // Kanji support stuff.
#endif
#ifndef NOHELP
#define NOHELP // Help engine interface.
#endif
#ifndef NOPROFILER
#define NOPROFILER // Profiler interface.
#endif
#ifndef NODEFERWINDOWPOS
#define NODEFERWINDOWPOS // DeferWindowPos routines
#endif
#ifndef NOMCX
#define NOMCX // Modem Configuration ExtensionsA
#endif
// Set target version to Windows Server 2003, Windows XP/SP1 or higher.
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0501
#endif
#include <windows.h>
// MSVC++ 2005 on Win2000 does not define _WIN32_WINNT.
#ifndef _WIN32_WINNT
#define _WIN32_WINNT WINVER
#ifdef __MINGW32__
// Require Windows XP or higher with MinGW for getaddrinfo().
#if(_WIN32_WINNT >= 0x0501)
#else
#undef _WIN32_WINNT
#define _WIN32_WINNT 0x0501
#endif
#endif
// Enable winsock (not included when WIN32_LEAN_AND_MEAN is defined).
#if(_WIN32_WINNT >= 0x0400)
#include <winsock2.h>
#include <mswsock.h>
#else
#include <winsock.h>
#endif
#include <ws2tcpip.h>
#include <ipexport.h>
#include <process.h>
//
On mingw environment AI_NUMERICSERV is not defined, needed in ip.cpp
.
//
In MinGW environment AI_NUMERICSERV is not defined
.
#ifndef AI_NUMERICSERV
#define AI_NUMERICSERV 0x0400
#endif
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment