-
Notifications
You must be signed in to change notification settings - Fork 51
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
Remove Boost Dependency #70
Comments
Yes, those Agreed, it is very hacky and unelegant. It it mainly in there since we did have the Boost dependency and I did not want to bother implementing a varaidic/any from scratch. Agreed, this should be replaced to get rid of even more dependence on Boost in the future. |
The last thing that is left is The functionality we need from it is (@C0nsultant pls append if I missed something):
(all of this: Linux/Unix, OSX, Windows) |
That should be it. To put it in terms less specific to Boost:
|
I think we can put this in a single |
We could potentially build a very slim backport of As a sidenote, this also means we have to assume POSIX availability for non-Windows systems. |
I thought so first as well, but alone the implementation of path objects, etc. is probably not worth it outside of pure curiosity. Since we don't need anything recursive I think the 5 slim functions above will be enough. |
It's on my list. |
Please replace boost MPL lists with mp11 lists.Requires Boost 1.66.0+
Update: oh wait, that is only boost variant you are controlling, right?
Anyway, careful with global
BOOST_MPL_
defines in-code! Better set them in CMake asPUBLIC
target properties since downstream code might useBOOST_MPL
as well! (and the compile-time impact ofBOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
might be big).There are also other C++11 libs of variant that we could consider to use in order to avoid Boost::MPL modifications.
Possible candidates for C++11 variants:
Possible replacements for C++11 filesystem (we require directory traversal, listing and creation):
The text was updated successfully, but these errors were encountered: