Is rmkdepend incompatible with gcc's -isysroot?

Hi,

I wanted to cross-compile ROOT for OS X 10.4 on an OS X 10.5 machine, so I passed “-isysroot /Developer/SDKs/MacOSX10.4u.sdk” to EXTRA_CFLAGS and EXTRA_CXXFLAGS. rmkdepend doesn’t like this:

Building precompiled header…
bin/rmkdepend -R -fbase/src/precompile.d.tmp -Y -w 1000 – -pipe -W -Wall -Woverloaded-virtual -fsigned-char -fno-common -arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -fvisibility-inlines-hidden -DUSEPCH -D__cplusplus – include/precompile.h
bin/rmkdepend: error: failed to read /Developer/SDKs/MacOSX10.4u.sdk
make: *** [include/precompile.h.gch] Error 1

the SDK is certainly readable:

ls -l /Developer/SDKs
total 0
drwxr-xr-x 7 root wheel 238 Sep 23 19:07 MacOSX10.4u.sdk
drwxr-xr-x 7 root wheel 238 Oct 12 00:23 MacOSX10.5.sdk
drwxrwxr-x 4 root wheel 136 Nov 27 10:50 usr

so I’m not sure what recourse I might have here. Best, Adam

Hi,

rmkdepend doesn’t know how to ignore isysroot which is what it should be doing. You can add it to OPT instead of adding it to C[XX]FLAGS - OPT is not passed to rmkdepend.

Cheers, Axel.

Hi Axel,

Thanks for the tip. This seems to work well, but there are a couple of “gotchas”:

-isysroot is not used when compiling dictionary source code
-isysroot is not used when compiling builtin_* libraries and xrootd (but that’s expected, I guess)

Regards, Adam

Hi,

you can add it to $(NOOPT) so it gets used for the dictionaries, too. The external libs won’t pick it up, though, that’s correct.

Cheers, Axel.

Thanks again, Axel, this works fine for the dictionaries as you suggest. I can supply my own builds of the various external libraries, although ROOT currently seems configured to ignore any external libAfterImage:

# Currently our libAfterImage is completely out of sync with the official
# libAfterImage due to many new features, use always the builtin_afterimage
.....
          #if test $asimage_version -gt 1003 ; then
          if test $asimage_version -gt 0 ; then
             result "WARNING: System libAfterImage is too new, using built-in"

Best, Adam

Hi,

can you change in asimage/Module.mk ACC to be “g++ -isysroot /Developer/SDKs/MacOSX10.4u.sdk” ?

Cheers, Fons.