Skip to content

Change mips64-unknown-linux-gnuabi64 to hard-float. #974

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

Merged
merged 1 commit into from
Jul 27, 2022

Conversation

Alexhuszagh
Copy link
Contributor

Changes mips64-unknown-linux-gnuabi64 to use a hard-float musl toolchain, rather than a soft-float one.

Closes #906.

@Alexhuszagh Alexhuszagh added bug container-images A-musl Area: musl libc targets A-mips Area: MIPS targets labels Jul 27, 2022
@Alexhuszagh
Copy link
Contributor Author

Alexhuszagh commented Jul 27, 2022

The linking to libgcc is due to an undefined reference to __trunctfsf2@@GCC_3.0 in strtod, needed for iostream, which is unusual since this is a soft-float routine.

Unfortunately, it doesn't seem possible to statically link musl and have libgcc, dynamically linking to /usr/lib64/libc.so.1 if required symbols from libgcc are found. This does not occur if no symbols are required.

@Alexhuszagh Alexhuszagh marked this pull request as ready for review July 27, 2022 16:59
@Alexhuszagh Alexhuszagh requested a review from a team as a code owner July 27, 2022 16:59
@Alexhuszagh Alexhuszagh marked this pull request as draft July 27, 2022 16:59
@Alexhuszagh Alexhuszagh marked this pull request as ready for review July 27, 2022 17:11
Comment on lines +1 to +5
#!/bin/bash

# this fixes an issue of missing symbols from the command lines
# these soft-float routines are required even for hard-float targets.
# (strtod.lo): undefined reference to symbol '__trunctfsf2@@GCC_3.0'
Copy link
Member

Choose a reason for hiding this comment

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

Should we ln this exec to make sure it's executed? Is that maybe not really needed (since cwd shouldn't change)

Copy link
Contributor Author

@Alexhuszagh Alexhuszagh Jul 27, 2022

Choose a reason for hiding this comment

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

The cwd won't change from where the script is invoked, so I don't think this is an issue. We could always remove the exec, my goal was just to replace the current process.

@Alexhuszagh
Copy link
Contributor Author

bors try --target mips64-unknown-linux-gnuabi64

bors bot added a commit that referenced this pull request Jul 27, 2022
@bors
Copy link
Contributor

bors bot commented Jul 27, 2022

try

Build succeeded:

Copy link
Member

@Emilgardis Emilgardis left a comment

Choose a reason for hiding this comment

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

bors r+

bors bot added a commit that referenced this pull request Jul 27, 2022
974: Change `mips64-unknown-linux-gnuabi64` to hard-float. r=Emilgardis a=Alexhuszagh

Changes `mips64-unknown-linux-gnuabi64` to use a hard-float musl toolchain, rather than a soft-float one.

Closes #906.

Co-authored-by: Alex Huszagh <ahuszagh@gmail.com>
@bors
Copy link
Contributor

bors bot commented Jul 27, 2022

Build failed:

@Alexhuszagh
Copy link
Contributor Author

Windows issue, for some reason the permissions got reset even on Git bash.

Changes `mips64-unknown-linux-gnuabi64` to use a hard-float musl toolchain, rather than a soft-float one.
@Alexhuszagh
Copy link
Contributor Author

bors r=Emilgardis

bors bot added a commit that referenced this pull request Jul 27, 2022
974: Change `mips64-unknown-linux-gnuabi64` to hard-float. r=Emilgardis a=Alexhuszagh

Changes `mips64-unknown-linux-gnuabi64` to use a hard-float musl toolchain, rather than a soft-float one.

Closes #906.

Co-authored-by: Alex Huszagh <ahuszagh@gmail.com>
@Alexhuszagh
Copy link
Contributor Author

Currently waiting on #978.
bors r-

@bors
Copy link
Contributor

bors bot commented Jul 27, 2022

Canceled.

@Alexhuszagh
Copy link
Contributor Author

bors retry

@Alexhuszagh
Copy link
Contributor Author

bors r=Emilgardis

@bors
Copy link
Contributor

bors bot commented Jul 27, 2022

Build succeeded:

@bors bors bot merged commit 0e337e4 into cross-rs:main Jul 27, 2022
@Alexhuszagh Alexhuszagh deleted the mips_hf branch July 27, 2022 23:28
@Emilgardis Emilgardis added this to the v0.3.0 milestone Aug 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-mips Area: MIPS targets A-musl Area: musl libc targets bug container-images
Projects
None yet
Development

Successfully merging this pull request may close these issues.

MIPS64 Musl Targets Are Hard-Float (but Missing Soft-FP Builtins)
2 participants