$Id: README.packaging,v 1.7 2004/02/20 04:11:26 mbp Exp $ -*- indented-text -*- Please read this file if you distribute packages of distcc and consider these requests. - If you make available packages or ports for some system, please send mail to the list so that I can include a link on the web site. - If you make change to program, please append to the version number so that it can be distinguished from the upstream version, e.g. in bug reports, and document your changes. (For example, change it to "0.13-foo11" if you modify it for the Fooix distribution.) I request this because I have had distributors introduce broken patches into distcc, and if somebody asks for support I want to know they're not using the same source. I have seen this happen on samba and rsync as well and it wastes everybody's time when the two parties see different programs as "foo-1.2.3". In the steady state there ought to be little need for distributors to patch anything; any reasonably portability fixes will be merged and if they add new features it deserves a different version. - Please install distccd into a directory that is on the default $PATH. (If sbin is not on the path for all users, please don't put it there.) This is important to making ssh work without hassle, and is compliant with the Linux filesystem hierarchy standard (FHS). - distcc uses the standard GNU configure options to set installation directories. In particular, you may want to change --prefix=/usr, and --sysconfdir=/etc. In addition you can use $(DESTDIR) when doing "make install" to install into a virtual root directory. - Because the daemon does not authenticate connections, please check that the administrator understands the consequences before starting it. Do not start it automatically when the package is installed. - If your installation script prompts for parameters, consider asking for a list of allowed netmasks to pass to the daemon's --allow option. - When installing the daemon, please create a system user called "distcc" for the use of the daemon. This is better than running the daemon as "nobody". You can either remove the user or leave it around if the package is uninstalled, depending on your distribution's policy. - I'd prefer for distributions to arrange for distccd to run as a standalone daemon (--daemon), not from inetd. It is a bit easier to support, and in the future there may be optimizations that only work in standalone mode. - If any patches are necessary for portability please forward them to me so that they can be considered for inclusion upstream. - Check that distcc uses shared libraries for popt and other things, if that makes sense on your system. In particular, make sure libraries in /usr/local are linked properly. - Try to make sure gcc is installed with fully-qualified names to aid users of distcc. (e.g. 'gcc-3.2', 'i386-linux-gcc-3.2' and 'i386-redhat-linux-cc-3.2.2'). This makes it much more likely that people will be able to plug-and-go for cross-architecture or cross-OS builds. It's good to name even native compilers this way so that they can participate in heterogeneous builds. If you don't maintain the compiler packages for your OS, please talk to the person who does. - Consider putting this line into /etc/services distcc 3632/tcp # distributed compiler Thankyou for your help.