At present it is monolithic, but I would like to split it up at some point. It mostly comes down to my lack of experience in packaging and already having my hands full to get everything in as-is for now. I'm copying @Ron_Olson and his work on Fedora which puts everything into /usr/libexec/swift/ and I hope to be able to use that work as an example for the Debian team to approve of me doing so as well.
Will do. At present it seems that many of the issues that I am seeing the lint tool dig up are already present in the llvm-toolchain package in Debian. Nothing really seems to be coming from the swift code itself. There might be some paths in libraries that could be a swift build script issue, but I am still looking into that as it might not be a problem. For example:
E: swiftlang: custom-library-search-path RUNPATH swift_5.6.2/build/buildbot_linux/llvm-linux-x86_64/lib [usr/libexec/swift/bin/lldb-argdumper]
N:
N: The binary or shared library sets RPATH or RUNPATH. This overrides the
N: normal library search path, possibly interfering with local policy and
N: causing problems for multilib, among other issues.
N:
N: The only time a binary or shared library in a Debian package should set
N: RPATH or RUNPATH is if it is linked to private shared libraries in the
N: same package. In that case, place those private shared libraries in
N: /usr/lib/*package*. Libraries used by binaries in other packages should be
N: placed in /lib or /usr/lib as appropriate, with a proper SONAME, in which
N: case RPATH/RUNPATH is unnecessary.
N:
N: To fix this problem, look for link lines like: gcc test.o -o test
N: -Wl,--rpath,/usr/local/lib or gcc test.o -o test -R/usr/local/lib and
N: remove the -Wl,--rpath or -R argument. You can also use the chrpath
N: utility to remove the RPATH.
N:
N: Please refer to https://wiki.debian.org/RpathIssue for details.