> On March 28, 2016, 9:10 p.m., Vinod Kone wrote:
> > 3rdparty/libprocess/3rdparty/http-parser-2.6.1.patch, line 10
> > <https://reviews.apache.org/r/45397/diff/1/?file=1317137#file1317137line10>
> >
> >     Do you know why the non-ssl build didn't have a problem with this 
> > conflict?
> >     
> >     Also, the real fix is for stout to namespace its flags (e.g., 
> > stout::flags) implementation instead of fixing the library. But I don't 
> > know how big of a change is that.
> 
> Greg Mann wrote:
>     It's due to the order of includes. The name collision occurs when 
> `3rdparty/libprocess/src/process.cpp` includes `openssl.hpp` - this leads to 
> a chain of includes that produces the collision. If SSL is not enabled, 
> `3rdparty/libprocess/3rdparty/stout/include/stout/flags/parse.hpp` doesn't 
> get included in the same scope as `http_parser.h`. If I add `#include 
> <stout/flags.hpp>` to `process.cpp`, the same collision occurs when compiling.
>     
>     Yep, I agree that stout should namespace its flags. It looks like that 
> header is included in 43 files, so we would need to add appropriate `using` 
> declarations in those files; not too bad.
>     
>     It seems like it might be a good idea to also namespace all of our 3rd 
> party libraries, i.e. that enum could become `3rdparty::http-parser::flags`.

Since this is blocking the CI, lets commit this for now. Can you create a 
ticket to namespace stout flags?


- Vinod


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45397/#review125745
-----------------------------------------------------------


On March 28, 2016, 9:18 p.m., Greg Mann wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45397/
> -----------------------------------------------------------
> 
> (Updated March 28, 2016, 9:18 p.m.)
> 
> 
> Review request for mesos and Vinod Kone.
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Changed name of http-parser enum to 'flags_enum'.
> 
> 
> Diffs
> -----
> 
>   3rdparty/libprocess/3rdparty/CMakeLists.txt 
> 04a4cf4241b8188c093f4942d27b050fa7b20397 
>   3rdparty/libprocess/3rdparty/Makefile.am 
> 385302a491aba5a38ff74c0debfc2a423b0c5a8a 
>   3rdparty/libprocess/3rdparty/http-parser-2.6.1.patch PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/45397/diff/
> 
> 
> Testing
> -------
> 
> `../configure --enable-libevent --enable-ssl && make check` was used to text 
> on OSX.
> 
> 
> Thanks,
> 
> Greg Mann
> 
>

Reply via email to