Sorry for creating another ticket with priority "critical", but my intention is to avoid moving ffado in the wrong direction in this area (As in Ticket #67).
After some years of manually compiling and installing a lot of packages from source, and also building my own packages from many of them, I hope to know roughly how this should work.
1) Compiling, then installing by a normal user:
This user does not know much about the software, he often only wants to install and then use it.
It is very important here that the default directory is /usr/local, because otherwise this user will slowly "destroy" his system by overwriting already installed files in /usr.
ffado here already does it right.
2) Configuring, compiling, then installing by an advanced user:
This user knows what he wants, he reconfigures the software, then compiles und directly installs the software.
This is the user which often changes the installation location and also other things to match his system better.
This user also has no problem with the default location since he normally changes this and other a lot more advanced settings.
ffado here also does it right.
3) Configuring, compiling, then MAKING A PACKAGE, NOT DIRECTLY INSTALLING by a packager:
This is normally not the user who wants to install and use the software directly after the package is compiled.
Configuring and compiling is the same as in the second case, but the installation in the configured location is NOT wanted.
This user wants an installation option called DESTDIR which simply is a prefix which is only used while installing the files. DESTDIR does not change the content of any installed files at all.
If DESTDIR is "/tmp/pkg-ffado" and PREFIX is "/usr" then the whole software will be installed under "/tmp/pkg-ffado/usr".
The packages is happy because his system remains clean, and he can easily build this package by collecting all the files in "/tmp/pkg-ffado".
IMHO ffado does NOT YET support DESTDIR!
Note: Packagers in this case can't use "scons install", but have to manually copy all the files before packaging them.
So, DESTDIR is the important missing piece for "packagers".