I've built a cache manager with WORDS_BIGENDIAN defined. Works fine.
There's some really screwey logic in src/config/afsconfig.h that is supposed to set WORDS_BIGENDIAN . For aix 4.3, this starts simply enough: #define AUTOCONF_FOUND_BIGENDIAN 1 #define ENDIANESS_IN_SYS_PARAM_H 1 presumably __BIG_ENDIAN__ isn't set (who sets this?) Then there's a hairy ifdef towards the end that sets WORDS_BIGENDIAN depending on __BIG_ENDIAN__, __LITTLE_ENDIAN__, ENDIANESS_IN_SYS_PARAM_H, KERNEL, BYTE_ORDER, and AUTOCONF_FOUND_BIGENDIAN. For kernel code on aix, this results in not setting WORDS_BIGENDIAN, and thus building a bad cache manager. The "simple" kludge is to just append the line "#define WORDS_BIGENDIAN 1" at the end of src/config/afsconfig.h after configuring afs, then at the top do ( cd src/libafs; make clean ) -- if you have old kernel objects in your build tree make only_libafs -- build just the cache manager You can then copy the cache manager pieces to your already existing system. Of course you can also build the whole thing. Just remember that if you type configure or config.status you'll have to patch afsconfig.h again. The "right" fix is to do something about the ifdef in src/config/afsconfig.h.in which comes from acconfig.h or better yet by using AH_BOTTOM in acinclude.m4 . -Marcus Watts _______________________________________________ OpenAFS-info mailing list OpenAFS-info@openafs.org https://lists.openafs.org/mailman/listinfo/openafs-info