some basic porting questions

joecwell at us.ibm.com joecwell at us.ibm.com
Tue Apr 18 14:32:23 UTC 2000


I'm trying to port BIND 8 to the IBM AS/400, and since it
does not have a 'make' facility, I've been trying to plod
along manually compiling all of the .c files and visually
looking at all of the Makefile's to try to figure out which
ones need to be bound together to come up with the executables.

As I run into individual compile problems, it has not been
clear to me whether I really have a portability problem, or
whether I might just be missing one of the many #define variables
BIND uses, or maybe that I do have a #define declared that I
should not have on my platform.

I've looked through many of the port_before.h and port_after.h
files of the other platforms where it appears most of these
#define declarations are supposed to go if required.
But at this point, I'm just guessing when or why any of them
should be used or not. I haven't stumbled upon a complete list
of the #define variables with a descriptions of when they
should or should not be used.

I'm trying very hard to use what is already architected before
resorting to actually changing the BIND source code.
Does such a comprehensive list/explanation exist anywhere in the
BIND download?  If not, is one available from some other source?

I also know that the Makefiles have been set up to actually
generate some .h and .c files on the fly, which I will need to
find and somehow pre-generate manually prior to compiling the
pieces that need them.  And I see in the notes that some stuff
gets generated by yacc and lex, is that correct? I think I
found where lex is used to create commands.c for nslookup; is
that correct? Is lex used anywhere else?  As for yacc, I can't
find where that is used ... can anyone point me to where it is?

And even if I get answers to the above questions, I'm also worried
that I "don't know what I don't know"; which leads me to a more
basic general question: has anyone else ported BIND to a
non-unix-like OS where you couldn't use 'make'?
If so, did you find any publically available porting guide from
ISC or elsewhere that gives the bigger picture of how one would
go about porting/building BIND 8 manually?  Or, is the process
just the same brute force bottoms-up path I'm already on?  If
anyone has any suggestions or tips, I'm all ears :).

Thanks in advance -
Joe
---------------------------------------------------------------
Joe Caldwell, IBM Corporation, AS/400 Division
1701 North St., Dept GZVA, Endicott, N.Y. 13760
Internet e-mail: joecwell at us.ibm.com
---------------------------------------------------------------





More information about the bind-workers mailing list