-
Notifications
You must be signed in to change notification settings - Fork 368
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
Support building with MinGW-w64 toolchain #2093
Support building with MinGW-w64 toolchain #2093
Conversation
cmake/Modules/Generate.cmake
Outdated
@@ -25,6 +25,12 @@ function(IDLC_GENERATE) | |||
endif() | |||
set(_idlc_depends CycloneDDS::libidlc) | |||
else() | |||
if (CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux" AND NOT ".so" IN_LIST CMAKE_FIND_LIBRARY_SUFFIXES) | |||
# When cross-compiling, find_library looks for libraries using naming onventions of the target, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# When cross-compiling, find_library looks for libraries using naming onventions of the target, | |
# When cross-compiling, find_library looks for libraries using naming conventions of the target, |
In Msys2 the change in src/idl/src/file.h is required for it to build.
Otherwise it fails with this error:
This isn't an issue in the Docker-build, because idlc is compiled natively, I guess. |
Signed-off-by: Patrick Masselink <[email protected]>
dbfa8cd
to
d73155d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! And I'm sorry I let this slip through the cracks, @PatrickM-ZS and @e-tmplr .
This should fix #2051. Thanks to @e-tmplr!
I've added a Dockerfile for Linux with a cross-compile toolchain. It builds, but I've not had much success running the binaries through wine. 32-bit crashes with illegal memory access, 64-bit runs but complains about malformed packets and outputs some gibberish. Maybe due to wine bugs, bad configuration, or perhaps there's something more serious. But that could be fixed on a different PR.