-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
x.py install doesn't install binaries. #80683
Comments
@vext01 tried doing a |
I nuked my whole git clone and started afresh. Cloned today's git code (b5c496d), put the above config in place, ran
So it seems it created an empty directory this time. So do we suspect this is something local to me, if you see something else? |
I also tried a different prefix outside of This is odd... |
I found out why my local result and your local result differ, and the piece of code that change it, but I still need to figure out why my change triggered the bug. If we look at the log you posted, the path in this line has an extra
That means the installation script is running successfully, but it's installing stuff on the wrong prefix, which is then deleted at the end of this snippet: Lines 67 to 83 in b5c496d
I was not reproducing the error myself because I used absolute paths in my |
Found the cause of the regression! #80240 moved the path canonicalization code, causing the Working on a PR now. |
Opened a PR with a fix: #80797 |
…Mark-Simulacrum Fix x.py install not working with relative prefix The code powering `./x.py install` did not handle relative paths well: the installation script is executed inside a temporary directory, so all the relative paths specified in `config.toml` and in the `DESTDIR` environment variable were relative to that temporary directory. The original code fixed the problem for `config.toml` paths by canonicalizing the prefix, but breaking `DESTDIR`. rust-lang#80240 fixed the `DESTDIR` problem, but also regressed `config.toml` paths (rust-lang#80683). This PR refactors the installation code to generate paths that *in my understanding* are correct, adding comments in the meantime to explain what each step does. There was no documentation on why choices were made before, so my understanding could actually be wrong. Regardless, executed `./x.py install` with various combinations of `config.toml` and `DESTDIR` paths, and everything seems to work according to my understanding. Still, I'd love if `@vext01` and `@yshui` could test these changes. r? `@Mark-Simulacrum` `@rustbot` modify labels: beta-nominated T-infra
@pietroalbini Since #80797 has merged, can this now be closed? |
I kept it open waiting for a backport, but it landed in #81151! Closing. |
CC @pietroalbini
On today's git (0cd459f)
x.py install
with the config below doesn't install any binaries.Here's the config:
docs = false
is needed to work around a differentx.py
bug where installing the docs hangs.After
x.py install
the resulting install dir contains:Also odd that some docs are installed?
Thanks!
The text was updated successfully, but these errors were encountered: