Skip to content
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

Add MSYS2 based builder for libiconv #24

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

cmb69
Copy link
Member

@cmb69 cmb69 commented Oct 29, 2024

This uses MSYS2 to run the autoconf based build chain of libiconv, but still uses MSVC tools and libraries for the actual compilation and linking.


This could be an option to resolve winlibs/libiconv#14. While there is no x86 builder yet, pdbs are missing, and the DLL doesn't conform to our naming standards, a PHP-8.4 build with the libiconv_a.lib from https://github.com/cmb69/winlib-builder/actions/runs/11577343626 worked flawlessly.

Of course, one might argue that all winlibs should only use "native" Windows tools for being built, I'd argue that we don't have sufficient capacities to really cater to that. For packages only offering autoconf based builds (like libiconv, gettext, etc.), we may be better off to actually use these, instead of trying to work around (and ignore possibly important updates).

PS: possibly useful: https://github.com/emilbayes/rename-dll

This uses MSYS2 to run the autoconf based build chain of libiconv, but
still uses MSVC tools and libraries for the actual compilation and
linking.
Comment on lines +46 to +48
set WORKSPACE=${{github.workspace}}
set WORKSPACE=%WORKSPACE:\=/%
set WORKSPACE=/%WORKSPACE::=%
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could use cygpath for path conversion.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Revisit our manual resolution to ./configure
1 participant