How build-script-build-$META turns into build-script-build

I'm trying to understand the process by which build-script-build-$META is transformed into build-script-build. According to the annotations in the source code of Cargo (specifically, cargo/core/compiler/layout.rs), it appears that build-script-build should be a hard link to build-script-build-$META. However, on my Mac, they seem to be two distinct files with identical content. Could anyone clarify this for me?

It's a hard link on my Linux system (not sure about Mac).

To make sure, you can run ls -i in a package's build folder. This will list the unique serial number / inode that each file points to, e.g. something like this:

8914090 build-script-build  8914090 build_script_build-e492843d17872ecb ...

If the two numbers are identical, which they are here, then they both point to the same place on the filesystem.

Changing the contents of one file will automatically be reflected in the other.

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.