Hi Fons, Andy, > > a) I'd like to remove some historical baggage. In the past I was unable to > > convince anyone that platform and compiler was independent. So, the best I > > got was -DSUNCC to tip me off that I was compiling for Solaris. This, of > > course, is silly. Would it be possible to *consistently* define a define > > symbol for general OS type? For instance, we have -D__linux__ and I'd like > > to extend that to other OS's. Specifically, I'd like -D__solaris__ if we > > are compiling for that OS. Once that happens, I'll change all occurrences > > of SUNCC to that symbol. > > > look in the $ROOTSYS/include/RConfig.h file. This file contains the > machine configs for ROOT and it has been honed over many years and works > for all our supported platforms. This is what I was also going to propose for point a). We could have a special header file, eg src/Xrd/XrdDefs.hh, where all the relevant OS and compiler version symbols are checked to define symbols identifying the cases relevant to xrootd. > > b) In porting to macos, I had to redo the getxxxnyxxx() calls. Now, I will > > use getnameinfo() and getaddrinfo() but only if they are available and > > revert to the get methods otherwise. However, that means that > > -DHAS_NAMEINFO must be defined for me to use the name routines. Most > > platforms have them now except for Solaris 7, I beleive. There is some > > kludginess for linux because getaddrinfo() primatively returns all > > possible addresses for a host, even when they are duplicates (i.e., the > > host has aliases). If you'd like to use a negative symbol (e.g., > > HASNO_NAMEINFO or MISSING_NAMEINFO) that's ok too. Ok, no problem, we can do it as for for -DHAS_STRLCPY . Gerri