fcitx / libime

43 stars 21 forks source link

make boost::filesystem optional #81

Closed eagleoflqj closed 2 weeks ago

eagleoflqj commented 3 weeks ago

Intent: on macOS enable tools but exclude migrators; on iOS disable them all.

wengxt commented 2 weeks ago

boost filesystem is suppose to be optional if std::filesystem is available.

There might be some issue on the GNUC <= 8 condition when build against clang, can you help fix that instead?

basically, libstdc++ in gcc 7 doesn't have usable std::filesystem

eagleoflqj commented 2 weeks ago

Wouldn't it be preferable to remove migration tools? After all fcitx4 was archived, and old versions of libime can always do the one-time job.

wengxt commented 2 weeks ago

Wouldn't it be preferable to remove migration tools? After all fcitx4 was archived, and old versions of libime can always do the one-time job.

Well, some people may have random binary files available on internet so it could still be useful. I have no plan to remove them anytime soon.

wengxt commented 2 weeks ago

If you need an example on std::filesystem detection, here's something I found on internet https://github.com/ccache/ccache/pull/1190/files

wengxt commented 2 weeks ago

Basically what in my mind is, run a CheckCXXSourceCompiles against the API that we use (there's only one), if fail, then fallback to boost filesytem. I believe whatever you care should have usable std::filesystem