intel / thunderbolt-software-user-space

Other
106 stars 20 forks source link

libboost dependencies #31

Closed finikorg closed 3 years ago

finikorg commented 6 years ago

Would it make sense to remove libboost dependency and use standard C++ filesystem libs?

ybernat commented 6 years ago

I wish :) Unfortunately, standard filesystem is only C++17. (I thik it's better not to use the TS here, I remember there were some changes in between).

ybernat commented 6 years ago

(Also, I mentioned boost.ProgramOptions as a dependency as I think the command-line parsing should be moved to use it instead of the current ad-hoc approach.)

westeri commented 6 years ago

Boost brings quite lot of libraries so I think we may want to eventually go with standard posix filesystem APIs that exist in every Linux system :)

ybernat commented 6 years ago

I do prefer the standard one, but the availability is still not wide enough yet, I afraid. Boost is widely used in general and we depend only on a specific part of it, so I'm not sure how much of an issue it is.

ybernat commented 6 years ago

Oh, you mentioned the standard POSIX interface. The best that it has for traversing FS is nftw? As long as the project uses C++, I think it makes sense to use a C++ API wherever possible, but this is just me.

westeri commented 6 years ago

We also have these functions such as opendir() and friends. Sure using C++ API makes sense if available but if we also have standard C APIs available as well I think we should use those if it avoids bringing megabytes of dependencies ;-)