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

the MSYS2 prefixes in the cran skeleton are fixed #5300

Open
2 tasks done
ifitchet opened this issue Apr 18, 2024 · 0 comments
Open
2 tasks done

the MSYS2 prefixes in the cran skeleton are fixed #5300

ifitchet opened this issue Apr 18, 2024 · 0 comments
Labels
type::feature request for a new feature or capability

Comments

@ifitchet
Copy link

Checklist

  • I added a descriptive title
  • I searched open requests and couldn't find a duplicate

What is the idea?

The cran skeleton currently says:

{{% set posix = 'm2-' if win else '' %}}
{{% set native = 'm2w64-' if win else '' %}}

and also uses the m2w64 prefix elsewhere for setting the compilers.

The should be parameterized.

Of course, the default action should be to create a functionally identical recipe. Only if you define the parameters should the strings change.

Why is this needed?

If conda PR conda/conda#13649 is merged then the Anaconda package prefixes will likely change to msys2- and one or more of ucrt64-, clang64-, mingw64- etc. matching the upstream MSYS2 environment names.

What should happen?

Further to simple parameterization, it would be beneficial if we could distinguish between MSYS2 build and MSYS2 host resources, so something like:

{{% set posix = '{msys2_msys_pkg_prefix}' if win else '' %}}
{{% set native_build = '{msys2_mingw_w64_build_pkg_prefix}' if win else '' %}}
{{% set native_host = '{msys2_mingw_w64_host_pkg_prefix}' if win else '' %}}

and for the compilers, the likes of:

                    deps.append(
                        f"{INDENT}{{{{ compiler('{msys2_mingw_w64_build_prefix}_c') }}}}      {sel_src_and_win}"
                    )

together with a change to what gcc-libs refers to in the recipe:

            elif dep_type == "run":
                if need_c or need_cxx or need_f:
                    deps.append(
                        f"{INDENT}{{{{ native_build }}}}gcc-libs       {sel_src_and_win}"
                    )

Additional Context

I've started a PR!

@ifitchet ifitchet added the type::feature request for a new feature or capability label Apr 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type::feature request for a new feature or capability
Projects
Status: 🆕 New
Development

No branches or pull requests

1 participant