thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James E. King, III (JIRA)" <>
Subject [jira] [Updated] (THRIFT-4025) Use the cmake generated config.h on windows
Date Sat, 11 Feb 2017 06:21:41 GMT


James E. King, III updated THRIFT-4025:
    Summary: Use the cmake generated config.h on windows  (was: As a developer, I would like
to use the cmake generated config.h even on windows)

> Use the cmake generated config.h on windows
> -------------------------------------------
>                 Key: THRIFT-4025
>                 URL:
>             Project: Thrift
>          Issue Type: Story
>          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

View raw message