You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "David (JIRA)" <ji...@apache.org> on 2019/02/27 15:12:00 UTC

[jira] [Created] (ZOOKEEPER-3292) ZooKeeper C Client for Windows: should include winports.h

David created ZOOKEEPER-3292:
--------------------------------

             Summary: ZooKeeper C Client for Windows: should include winports.h
                 Key: ZOOKEEPER-3292
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3292
             Project: ZooKeeper
          Issue Type: Bug
          Components: c client
    Affects Versions: 3.4.13
         Environment: Windows 10

CMake

ZooKeeper 3.4.13 
            Reporter: David


When building the C client on Windows with CMake:

cmake -DWANT_SYNCAPI=OFF -DCMAKE_GENERATOR_PLATFORM=x64

 

With this input, the header file winports.h will not be added in these files:

*zk_log.c*

*zk_adaptor.h*

Also, I think winports.h should be added to *zookeeper.c*

 

Without winports.h compiling will fail on Windows. Errors are about strtok_r and localtime_r - the Windows mappings in winports.h are missing. 

I am guessing that other important includes are missing too (like Windows Sockets).

 

One solution could be to extract the winports.h include out from the THREADED preprocessor, to a separate one:

#ifdef WIN32

#include "winport.h"

#endif



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)