You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Ricky Cormier (Updated) (JIRA)" <ji...@apache.org> on 2012/04/12 16:57:18 UTC

[jira] [Updated] (THRIFT-1552) Thrift (cpp) include files shouldn't require adding "thrift" to the compilers include path.

     [ https://issues.apache.org/jira/browse/THRIFT-1552?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ricky Cormier updated THRIFT-1552:
----------------------------------

    Attachment: THRIFT-1552-Include-paths-for-c-and-cpp-should-be-prefixed-with-thrift.patch
                THRIFT-1552-Include-paths-for-c-and-cpp-should-be-prefixed-with-thrift.patch

THRIFT-1552 Include paths for c/c++ should be prefixed with 'thrift/'

To ensure there are no include path collisions the C and C++ header
include paths should include 'thrift' as the root leaf. This will
prevent having to place /usr/include/thrift into the compilers include
header search path, which might otherwise result in the compiler
accidentally picking up headers that it shouldn't.

e.g. #include <foo/bar.h> should be #include <thrift/foo/bar.h>

The change can also be viewed on Github.
https://github.com/evilrix/thrift
                
> Thrift (cpp) include files shouldn't require adding "thrift" to the compilers include path.
> -------------------------------------------------------------------------------------------
>
>                 Key: THRIFT-1552
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1552
>             Project: Thrift
>          Issue Type: Improvement
>          Components: C++ - Compiler, C++ - Library
>    Affects Versions: 0.8
>         Environment: All
>            Reporter: Ricky Cormier
>              Labels: cpp, include, path
>         Attachments: THRIFT-1552-Include-paths-for-c-and-cpp-should-be-prefixed-with-thrift.patch, THRIFT-1552-Include-paths-for-c-and-cpp-should-be-prefixed-with-thrift.patch
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> When including thrift header files it is necessary to add thrift to the compilers include path. Headers are then included something like this...
> #include <thrift.h>
> #include <server/TNonblockingServer.h>
> #include <protocol/TBinaryProtocol.h>
> ... and so on.
> It is generally preferable to have include paths prefixed with the name of the library to which they belong. This not only prevents the possibility of include ambiguity it also acts as documentations and aids readability.
> This changes is to allow the header files to be included with "thrift" as the leading path leaf...
> #include <thrift/thrift.h>
> #include <thrift/server/TNonblockingServer.h>
> #include <thrift/protocol/TBinaryProtocol.h>
> We have already made this change to our version of thrift-0.5.0 and I am currently working on patching this change to trunk.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira