thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James E. King, III (JIRA)" <j...@apache.org>
Subject [jira] [Created] (THRIFT-4025) As a developer, I would like to use the cmake generated config.h even on windows
Date Tue, 10 Jan 2017 19:48:59 GMT
James E. King, III created THRIFT-4025:
------------------------------------------

             Summary: As a developer, I would like to use the cmake generated config.h even
on windows
                 Key: THRIFT-4025
                 URL: https://issues.apache.org/jira/browse/THRIFT-4025
             Project: Thrift
          Issue Type: Improvement
          Components: C++ - Library
    Affects Versions: 0.10.0
         Environment: Windows
            Reporter: James E. King, III
            Assignee: James E. King, III


The thrift windows C++ library build uses a special cased config.h file that does not honor
the flags used when generating the cmake build environment.  If you look into thrift/thrift-config.h
which is included from thrift/Thrift.h you will find:

{noformat}
#ifdef _WIN32
#include <thrift/windows/config.h>
#else
#include <thrift/config.h>
#endif
{noformat}

The cmake build environment generates a thrift/config.h file and places it into the out-of-tree
build directory.  It differs significantly from the build options used when running cmake.
 For example:

In thrift/windows/config.h if Visual Studio 2012 or later is being used, boost threads are
disabled and std threads are enabled, indicating C++11.  If you look in thrift/config.h for
a build generated with boost threads enabled,  (-DUSE_BOOST_THREADS), the generated config.h
should have that.  The windows specific config. blindly sets HAVE_INTTYPES_H to 1, without
actually checking for <inttypes.h>, which is checked during cmake generation and put
into thrift/config.h.

In short, We should eliminate the windows branch on the configuration files here, and just
use the config.h that is generated by cmake.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message