httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject Re: architecture-specific directories
Date Tue, 14 Nov 2000 19:39:40 GMT

> > > For me, OSDIR is set to the os390 directory, but there is no
> > > networkio.h in that directory.  The dependency causes make to bail
> > > out.  I can make it work for now by editing network_io/unix/Makefile
> > > and misc/unix/Makefile and setting OSDIR to the unix directory, but
> > > obviously we need a better solution.
> > > 
> > > more thought required...
> > 
> > This is a dependancy issue.  Just change the dependancy to be
> > unix/networkio.h or run make depend in that directory.  The problem is
> > happening because the dependancies were created on a unix box, where OSDIR
> > == DEFAULT_OSDIR.  If you re-run the dependancies on a 390 box and commit
> > the changes this will go away and things will still work on Unix.
> That is a hack and we need a better solution. What you are saying is that we
> can never generate the dependencies except from an OS/390 box. That is
> simply unacceptable for our development process.
> I don't know enough about the dependency (generation) to suggest a solution,
> but I know enough to say OS/390 -only generation is not going to work for us
> long-term.

I agree 100%.  But, this will fix the current problem.  The underlying
problem is a lot hairier to solve, because we never know what platform we
are going to be compiling on.  The easy fix is to go back to explicitly
stating which directory the header file is in.  

Looking at this, I think the only two options are to either go back to the
method used before last night, or to remove dependancies from the
Makefiles, like we did in the Apache code.

I can't see a good way to generate dependancies as the code is currently
organized that will allow us to always get the right dependancy.  As
proof lets just look at Jeff's example, threadproc.h.  This file exists on
some platforms but not on others.  If we always check DEFOSDIR first, then
the thread/process code will compile cleanly, but when we get to dso's,
we'll die again.  We will die on dso's, because we will find the unix
dso.h file, instead of os390's.

Ryan Bloom               
406 29th St.
San Francisco, CA 94131

View raw message