-
-
Notifications
You must be signed in to change notification settings - Fork 230
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
Enhancement: _coff suffix for architectures #628
Comments
My feeling is that we should make this a fully orthogonal extension. In that case it would be separated by a dash and we'd have |
+1 Even better. |
I found this bug when looking if something similar is already reported. when building with default dub build, the m32mscoff switch is added ok, but when you try it with dub build -a x86 -> both flags are added which seems wrong. |
You might have stumbled on an issue that is due to me giving up on OMF. You have a 64k symbol limit that causes obscure failures in the linker. I've had too many issues with it for other reasons - there's also the vast amount of windows libraries WinVista+ that weren't ported to that format. You also can't statically link anything built on C++/C VS2013. So, might as well use microsoft linker for microsoft platforms, but it's a shame 32mscoff isn't supported in DMD installations out of the box (you have to custom compile the phobos library for it). |
I'm trying to build a REST server based on vibe, botan, libasync on windows and it's painfull :) |
I can't say much about building with libevent and openssl, because I use botan and libasync. Maybe you can try my custom fork on here: In your project, use: They are tested with these druntime/phobos versions: I've tested this setup for the last 5 months, eliminating many leaks, access violations, etc. I will be adding LDC 16 support soon. However, the latest REST updates might not be available, but it's a production build (at least for me). You can look at the h2_server and h2_request examples. There's a cookie jar and http/2 in there, and a new debug (wireshark-like capture) interface in http://127.0.0.1:8080/debugger/ if you register it from vibe.http.debugger |
What is the progress on this issue? |
👍 for target triple(t)s. These are also used by GCC and autotools. GDC and GCC cross compilers are named
|
A temporary solution, targeting |
Timing! I just forked the source the other day and implemented the same, though I called it x86_msvc. I |
Closing this in favor of #228, which is intended to provide a general solution. |
Since the proper way to specify -m32 and -m64 is with -ax86 and -ax86_64 on the command line, there also needs to be a way to specify -m32mscoff. This also applies to LDC, where there is a need to distinguish between the MinGW and VC backends. This is true for both compilers, particularly if any linker-specific flags need to be passed along (I often use the SUBSYSTEM:WINDOWS flag, which requires a different format the three different linkers on Windows). Here's a proposal:
Two new architecture formats that can be passed to -a and tested for with 'platform' in the package configuration: x86_coff and x86_64_coff.
So we can then do things like this:
If would be nice if it were possible to specify both x86_coff and x86_64_coff in platform, but I don't know if that's actually valid. Perhaps we could also add 'windows_coff' to cover that case?
The text was updated successfully, but these errors were encountered: