-
Notifications
You must be signed in to change notification settings - Fork 80
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
Get ESMF Compiling on Cygwin, and set up a CI run #201
Get ESMF Compiling on Cygwin, and set up a CI run #201
Conversation
So far only tests whether ESMF actuall compiles on Cygwin. I don't actually run the tests yet. I will need to figure out how to add "-D_BSD_SOURCE" to C++ compile lines before it completes.
This should let the compilation start.
Hopefully this lets me figure out the unexpected end of file errors.
Forgot that Windows git would put \r\n line endings, which Cygwin doesn't like.
Many declarations are hidden behind visibility macros. _BSD_SOURCE un-hides most of them. _POSIX_C_SOURCE un-hides another couple.
Cygwin is more like Windows than Linux here: make sure the import library gets generated in addition to the DLL and that both have the right names. Import library: lib${name}.dll.a Shared library: cyg${name}-${abi}.dll or cyg${name}.dll
I forgot the semicolons, so bash didn't recognize the control structures.
Not sure if this will fix the failure, the error wasn't very clear.
I am going to merge this PR into a branch under the esmf-org/esmf repo so we can collaborate on it better. It should be open for everyone. |
It doesn't want to let me because I'm not a collaborator. |
Good point... I thought we had this open, guess not. Let me discuss this with the team... we might invite you as collaborator for this.... I think it will make this easier, especially for testing the action. |
@DWesl - you should receive an invite for collaborator. After you accept, please re-open your PR from branch https://github.com/esmf-org/esmf/tree/feature/esmf-cygwin-compile. Thanks! |
I updated my ESMF build on Cygwin, and tried to generalize my changes from the last time I did this so ESMF would still compile on Linux.
I also added a CI run to ensure ESMF compilation gets checked. I think I set up the tests to run as well, but I'm less sure of that.
Might close #136; I'm not sure if they're after a Cygwin build of ESMF or a 64-bit MinGW/Windows build of ESMF. PR #149 suggests they're after a MinGW-w64 build but are trying to do it in Cygwin without cross-compilers for whatever reason.