Open skeeto opened 11 months ago
Normal mingw-w64 toolchains (at least the arch package is) are prefixed by (x86_64|i686)-w64-mingw32
.
At least, I've never seen an i686-w32-mingw32-gcc
. Is there a good reason to change this part of the prefix?
There's a bit of discussion in #36 about a multilib w64devkit, I think having a variant like that would be ideal. Installing two w64devkits also implies duplicating all the tools within, like the command aliases, busybox, cppcheck, vim, etc. I think really most users are only going to care about the toolchain in this circumstance.
I'm considering renaming the "i686" variant to "w32devkit". On my systems I keep both 64-bit and 32-bit toolchains side-by-side and I rename the latter locally in order to tell them apart. For releases I'd rename both the zip and the top-level directory. I'm also dropping the "mini" variants since the difference has become so little. That makes for these four build artifacts:
w32devkit-x.y.z.zip
unzips tow32devkit/
w32devkit-fortran-x.y.z.zip
unzips tow32devkit/
w64devkit-x.y.z.zip
unzips tow64devkit/
w64devkit-fortran-x.y.z.zip
unzips tow64devkit/
I like that the names are simpler and more concise, and that I can unzip 32-bit and 64-bit versions side-by-side without intervention. The 64-bit builds are unchanged, so no disruption there.
My concern is that some people, especially newcomers, have trouble navigating (and even finding!) GitHub's "Releases" page. The default and least specialized build is
w64devkit-x.y.z.zip
, and by sheer luck, it currently sorts to the top, ignoringsource.tar
. However, with the rename it will be 5th in the list, counting.sig
s, which is a less obvious download. Though perhaps I could kill two birds with one stone by putting download links inREADME.md
— or get around to finally building a simple, official website where I control navigation.I've long wished it was possible to blend releases, by, say, unzipping one atop the other, or putting both in
PATH
. The buried toolchain would be accessible by its architecture triple (e.g.i686-w32-mingw32-gcc
). Renaming the 32-bit toolchain would make merging an installation more difficult. However, even in the relatively simplePATH
case, the buried toolchain is confused about which tools to use, and I haven't yet figured out how to fix it.(Side note: I've also considered not building Fortran releases — while still maintaining the variant patch — but there are a substantial number of users, notably the
llama.cpp
community, so it's worth continuing.)Feedback welcome.