Fix MinGW cross#1883
Conversation
|
Hi Ericson2314! Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file.In order for us to review and merge your code, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA. If you have received this in error or have any questions, please contact us at cla@fb.com. Thanks! |
|
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks! |
Helps for cross builds, doesn't matter on Windows itself.
6d51746 to
def3bc2
Compare
|
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks! |
|
Should be all good now |
|
CC @vtorri @jdxAtGitHub |
|
it would be nice to fix import lib name : see issue #1877 |
|
@vtorri it would, but I would do that separately as I was able to link fine with this name. |
|
the name of the import lib can have .lib extension, but the static lib can also have .lib extension. That's what visual studio does, but it is not a good idea. libtool, and the vast majority of open source project uses .dll.a as extension to enforce the fact that it's the import lib ok to do that separately |
generate_res.bat seems rather pointless, am I missing something? I just inlined it into the Makefile.
Needed a bunch of `$(EXT)`
def3bc2 to
10552ea
Compare
|
Looks good to me ! The only point I wonder is : how to test this capability ? I believe it's an important point, otherwise it would be easy to break this capability in any future patch. I guess this should be done on AppveyorCI, our current Windows based CI ? |
|
Do what https://github.com/facebook/rocksdb does, it is also a Facebook project so shouldn't be too dificult. MinGW cross will catch a few more things than MinGW native too. https://github.com/facebook/rocksdb/blob/master/.travis.yml#L115-L116 I unfortunately don't have much more time to put into this, sorry, but I also think these fixes won't bit-rot too badly, which makes it less urgent. |
|
i'm using zstd in my package manager and i test each new release with MSYS2 + mingw-w64, so i also don't think it will bitrot |
|
In https://travis-ci.org/facebook/zstd/jobs/617904275, I've added a As expected, if fails, since it doesn't include this patch :
I guess it's the issue of casing that this patch fixes. Also notable, library compilation doesn't seem to like the |
|
always use lowercase header file name on windows for cross compilation |
|
The |
|
redirecting the PR towards |
|
Well, I was expected CI tests to be triggered after the change of destination branch, but apparently, they are not. Merging. Tests to be continued onto |
|
Can you make an issue for the testing the library? I was building this to build rocksdb in NixOS/nixpkgs#73316, so I can assure you the library is being cross compiled in practice. |
|
The CLI-limited Compiling the library is likely to work fine too, it's just that it generates a ton of |
|
Right, the issue would mention the PIC warnings as the blocker. |
|
Thanks! Subscribed |
The batch file was very unnecessary.