Purpose: to contain discussion relating to an installation directory structure that is recommended for people writing tcl extensions or applications.
LV Jump right in and add info as you see needed:
By default, extensions should use two main groups of locations for installing things, one for architecture-independent files, and one for architecture-dependent files.
--prefix specifies the location of the architecture-independent files (e.g. Tcl scripts, header files, documentation) and is conventionally /usr/local by default. Beneath this location, the following places are usually defined:
'''share''': Place to install miscellaneous other files, such as HTML pages.
--exec-prefix specifies the location of architecture-dependent files (binary extensions, etc.)
jenglish I find it works better to put the entire package runtime in a sibling directory of info library. This is usually the same as ${libdir}, but not always.
Splitting up architecture-dependant (e.g. shared libraries) and architecture-independant (e.g., scripts) parts makes it more difficult for the former to locate the latter.
It is the eternal difficulty of keeping parallel versions in sync versus keeping a single copy of sharable code and a binary for each platform.
What about demos? I would prefer to see demo executables be installed in $prefix/bin, instead of the current practice of some extensions of putting them into $prefix/lib/extension$version.$level/demos or whatever .