-
-
Notifications
You must be signed in to change notification settings - Fork 262
add --with-system-boost configure option for using system-wide boost headers #6972
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
src/include/firebird/Message.h
Outdated
|
|
||
| #include "ibase.h" | ||
| #include "./Interface.h" | ||
| #if defined USE_SYSTEM_BOOST |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is public header file. So I think name must be better FB_USE_SYSTEM_BOOST.
|
Taking into account that C++11 features are fully available, do we still need boost? |
avoids potential clashes with third party software which includes firebird/Message.h
I like the idea of replacing an external dependency with a compiler feature. Hopefully someone more fluent in C++ than me would try it. |
We didn't discussed C++11 in public headers yet. I support it. |
configure.ac
Outdated
|
|
||
| LOCAL_BOOST=Y | ||
| AC_ARG_WITH(system-boost, | ||
| [ --with-system-bools use system-wide boost library instead of embedded copy], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is misspelled (bools).
|
How that will work for public headers? Will you put a dependency for boost in firebird-client-dev (or the name you use) package? Will you deploy fb-boost headers in that package? Will the user also need to use the define? |
Good question. Requiring that all consumers of Perhaps I should reverse the define and rename it to That dependency, while technically needed, is not present in firebird3.0 packages which have a similar patch (crudely using system boost and replacing Will update the PR with |
|
nobody complained for the last 5+ years.
It just means that nobody uses Messages.h.
|
I think the approach used in fb3 Debian packages is the least evil. The cleanest way from consumer side would be to have fb3 debs took one approach at this, patching the installed files. An approach that controls the output via |
The problem with the #ifdef approach is that Message.h is a public header that is shipped to user systems and should not require defines to be usable
|
This became as good as patching during package build with the added benefit that including it upstream will make the functionality available for other downstream distributions. |
This is the last one of the "use system $lib" series.