Bucktooth: Making changes to Bucktooth (DON'T JUST EDIT IT!) ------------------------------------------------------------ Obviously, when I say changes, I mean changes to the code, not configuration. If you just want to make a configuration change, simply rerun the appropriate configure file, answer the questions again, and go about your business. However, when people want to make changes to the code, the general temptation is to go find the object file it dropped and then edit that. It's easy and it works -- BUT DON'T DO IT!!!! Why? If you have to make a configuration change to Bucktooth and re-run configure, your code changes *are* *obliterated* by the new installation! The solution is then to make sure you edit buckd.in in your install directory (which is why I told you not to toast it, remember?). buckd.in is then teased and twisted into a runnable script by the configure suite, which has a primitive make and preprocessor suite built-in. Whenever you run configure, it drops a transcript file (usually named transcript.0.configure or something similar) that contains all the responses you gave. Armed with that file, you can easily replicate changes to your installed version like this: - Edit buckd.in and make your changes. - Call the appropriate configure script with -d and the transcript file, e.g., perl configure.xinetd -d transcript.5.configure.xinetd - Enjoy the changes. You might do a 'perl -c' on your installed object to make sure you did it right (configure doesn't do this for you; it assumes you have some idea what you're doing). The pre-processor format in buckd.in is relatively simple-minded. You should be able to see DEF_ines that match up with questions asked during the configuration process. There is also a ~check directive used analogously to #if in cpp. However, most legal Perl code will also be parsed intelligently by the preprocessor, too. Remember that in future upgrades, you will have to merge your custom buckd.in with the new one. .