[SYCL] Move Linux device library install out of lib/ and into lib/dpcpp-(major_version)/sycl (#22036)
Currently, we install all libdevice files to `lib/`. We are trying to
improve our packaging to make it easier for Linux distros to package the
compiler, and installing dozens of .bc files to `/usr/lib` breaks many
distro policies. The main problems are that these files have no use to
end users or applications using SYCL, they are only needed by the SYCL
compiler itself. Installing to `/usr/lib/libsycl-crt.bc` for example
doesn't make sense.
This change proposes moving the files to
`lib/dpcpp-DPCPP_MAJOR_VERSION/sycl`, so a real example would be
`lib/dpcpp-7/sycl`.
This change is being made only for Linux, as the file packaging is
already much different for Windows, for example today we put libraries
in general (such as `libsycl.dll`) in `bin/` but `libdevice` files in
`lib`, so I don't see any need to match the behavior between OSes and
complicate the Driver code even more.
Note the `libdevice` code also generates a host static library,
`libsycl-devicelib-host.a`, which is completely untouched by this PR.
Closes: https://github.com/intel/llvm/issues/21512
---------
Signed-off-by: Nick Sarnie <nick.sarnie@intel.com>