-
Notifications
You must be signed in to change notification settings - Fork 214
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
Directory picker support #22 #24
Conversation
Great! I will have some time in the next couple days to look closely at this and #23. |
This change breaks Mingw builds on Windows because the added destructors generate link-time errors. Previously, NFD eschewed an RAII pattern, using gotos. This avoids a dependency on libc++ for the entire calling program and allows library users to compile with "gcc" instead of "g++". In order to have the PR merged, exes need to link as C programs on all compilers. Please use the goto style instead of RAII. If you need steps to set up msys2's mingw on your computer to test, let me know. Build error excerpt:
Full msys2 mingw x64 buildbot output:
|
Is it possible to build with -fno-exceptions flag? This seems to be caused because it wants to add SEH exception handling which is not required - and as you say the SEH handling code is in the runtime. |
Good call. I made the fix and committed the result to the devel branch. We now generate nfd.a with -fno-exceptions. The linking executable is free to use exceptions or not use exceptions. I also regenerated all of the project files so that test_pickfolder is available. It is passing on all compilers, arches and build types. All these changes are currently sitting in devel. Thanks for the contribution! |
Tested on Windows 7 with MSVC, OSX and Ubuntu with gcc and clang