Port update-mime-database.c to C++
Since the 2.0 release accidentally killed the Windows support which autotools previously provided and that we relied on in KDE craft packaging for Windows, I had to port various part of shared-mime-info.c to C++ to make it work again on Windows https://invent.kde.org/packaging/craft-blueprints-kde/-/merge_requests/652/diffs (e.g replace usage of opendir with std::filesystem)
The patch in the current state is too ugly to upstream as I tried to keep the change minimal but I wonder if a full C++ port of the existing program would be something upstream is interested in. The advantage would be that it wouldn't rely as much on poxis/linux stuff which would make it possible to run on more platforms (Windows) and it would benefit from more type safety provided by modern C++ construct.