Porting BIND 8 to Another System Make sure to base your port on an existing one. If your port is for a new release of an already supported operating system, please try to make the existing port support the new release instead of making a new port directory. For an example of how to do this, look at how the Solaris port uses os_version.h in port_after.h. See port/solaris/include/Makefile and port/solaris/bin/make_os_version to learn how an os_version.h is made. Porting problems fall into broad categories which have simple answers: Include File Missing or Broken Make one (possibly empty) in port/*/include or in port/*/include/sys. Broken include files can be fixed; see the BSD/OS and ULTRIX ports for examples of how to do this. Library Function Missing: Make one (possibly copying it from some other port and hacking) and cause it to appear in port/libport.a by virtue of building it in port/*/Makefile. An example is the __ansi_realloc() routine in the SunOS port. Desired system feature absent or not prototyped or whatever: Edit port/*/include/port_{before,after}.h. read a few source files in lib/ or bin/ to see when/why these are #included. "Make" doesn't work even though my system has a port/* subdir: Type "uname -s -r" at your shell and see if the resulting string is present in your system's putative port/*/probe file. If not, try adding it. If it works, send mail to bind-bugs@isc.org. My system doesn't have enough of ANSI and POSIX to allow a port: Give up. Get a different system. Porting mistakes also fall into broad categories with simple answers: I Can't Get It To Build Without Compiler (Not Linker!) Warnings: Keep trying, you're not done yet. I Need To Add Another Portability #define And Some #ifdef's: Make sure it won't hurt any other port. Send us some mail. I Just Have To Edit A Source File To Get It To Compile: You are probably missing one of the above opportunities to do the right thing and you should rethink your approach and get some advice before you send in your port. But it's possible that a non-UNIX system will need a different porting layer, especially in isc/eventlib.c and its friends, so contact us if you're stuck on this point, there may be something we can do. Send mail to bind-bugs@isc.org. My Employer Won't Allow Me To Send In Porting Diffs: You probably need a new employer. But try really hard, OK?