spack/lib/spack
Greg Becker fafff0c6c0
move sbang to unpadded install tree root (#19640)
Since #11598 sbang has been installed within the install_tree. This doesn’t play
nicely with install_tree padding, since sbang can’t do its job if it is installed in a
long path (this is the whole point of sbang).

This PR changes the padding specification.  Instead of $padding inside paths,
we now have a separate `padding:` field in the `install_tree` configuration.

Previously, the `install_tree` looked like this:

```
    /path/to/opt/spack_padding_padding_padding_padding_padding/
        bin/
            sbang
        .spack-db/
            ...
        linux-rhel7-x86_64/
            ...
```

```
This PR updates things to look like this:

    /path/to/opt/
        bin/
            sbang
        spack_padding_padding_padding_padding_padding/
            .spack-db/
                ...
            linux-rhel7-x86_64/
                ...

So padding is added at the start of all install prefixes *within* the unpadded
root.  The database and all installations still go under the padded root.

This ensures that `sbang` is in the shorted possible path while also allowing
us to make long paths for relocatable binaries.
2020-11-12 16:08:55 -08:00
..
docs MavenPackage: allow additional build args (#19676) 2020-11-12 12:57:49 -08:00
env Oneapi add compiler (#19330) 2020-10-29 16:52:54 -05:00
external fix typo wrt target=graviton (#19865) 2020-11-11 19:29:13 -06:00
llnl macos: update build process to use spawn instead of fork (#18205) 2020-11-12 12:26:23 -08:00
spack move sbang to unpadded install tree root (#19640) 2020-11-12 16:08:55 -08:00