Has anyone else noticed that the JUAFS makefile isn't pulling in all the
defines it should? The biggest one I've noticed is it isn't defining the
platform, but even when I do that manually or add it to the Makefile's DEFINES,
I'm getting strange errors in bits of code pulled in from other directories
which normally compile fine...so I'm guessing there are other defines left out
as well. I've included the errors below.
I'm not really concerned about getting JUAFS to work (I don't use it and IRIX
doesn't have anything newer than java 1.4 anyway), but it is part of the
default compile. So this is not about getting JUAFS working, rather it's about
getting the default compile working again.
Without ensuring -DAFS_SGI_ENV (JUAFS/Makefile has
"DEFINES=-D_SGI_MP_SOURCE -DKERNEL -DUKERNEL"):
<pre>
cc -I. -I.. -I../nfs -I/usr/people/clc31/src/openafs-git/src
-I/usr/people/clc31/src/openafs-git/src/afs
-I/usr/people/clc31/src/openafs-git/src/afs/UKERNEL
-I/usr/people/clc31/src/openafs-git/src/config
-I/usr/people/clc31/src/openafs-git/src/rx
-I/usr/people/clc31/src/openafs-git/src/rx/UKERNEL
-I/usr/people/clc31/src/openafs-git/src/rxkad
-I/usr/people/clc31/src/openafs-git/src/rxkad/domestic
-I/usr/people/clc31/src/openafs-git/src/util
-I/usr/people/clc31/src/openafs-git/src
-I/usr/people/clc31/src/openafs-git/src/afs/UKERNEL
-I/usr/people/clc31/src/openafs-git/src/afs
-I/usr/people/clc31/src/openafs-git/src/util
-I/usr/people/clc31/src/openafs-git/src/rxkad
-I/usr/people/clc31/src/openafs-git/src/config
-I/usr/people/clc31/src/openafs-git/src/fsint
-I/usr/people/clc31/src/openafs-git/src/vlserver
-I/usr/people/clc31/src/openafs-git/src/libuafs
-I/usr/people/clc31/src/openafs-git/include
-I/usr/people/clc31/src/openafs-git/include/afs -O -DKERNEL
-DAFS_WEB_ENHANCEMENTS -I. -I.. -I/usr/people/clc31/src/openafs-git/src/config
-I/usr/include/sys/fs -D_SGI_MP_SOURCE -DKERNEL -DUKERNEL -c
/usr/people/clc31/src/openafs-git/src/afs/afs_dcache.c
cc-1029 cc: ERROR File =
/usr/people/clc31/src/openafs-git/src/afs/afs_dcache.c, Line = 115
An expression is expected at this point.
.open = osi_UFSOpen,
^
...
20 errors detected in the compilation of
"/usr/people/clc31/src/openafs-git/src/afs/afs_dcache.c".
gmake[4]: *** [../JUAFS/afs_dcache.o] Error 2
gmake[4]: Leaving directory
`/usr/people/clc31/src/openafs-git/src/libuafs/JUAFS'
</pre>
Which, when you look at the code, is because AFS_SGI_ENV is not defined and so
the wrong bit of code is being compiled. Yes, I checked, it's not because
__c99 is not defined.
Now, with the addition of -DAFS_SGI_ENV to JUAFS/Makefile as:
"DEFINES=-D_SGI_MP_SOURCE -DKERNEL -DUKERNEL -DAFS_SGI_ENV"
I get:
<pre>
cc -I. -I.. -I../nfs -I/usr/people/clc31/src/openafs-git/src
-I/usr/people/clc31/src/openafs-git/src/afs
-I/usr/people/clc31/src/openafs-git/src/afs/UKERNEL
-I/usr/people/clc31/src/openafs-git/src/config
-I/usr/people/clc31/src/openafs-git/src/rx
-I/usr/people/clc31/src/openafs-git/src/rx/UKERNEL
-I/usr/people/clc31/src/openafs-git/src/rxkad
-I/usr/people/clc31/src/openafs-git/src/rxkad/domestic
-I/usr/people/clc31/src/openafs-git/src/util
-I/usr/people/clc31/src/openafs-git/src
-I/usr/people/clc31/src/openafs-git/src/afs/UKERNEL
-I/usr/people/clc31/src/openafs-git/src/afs
-I/usr/people/clc31/src/openafs-git/src/util
-I/usr/people/clc31/src/openafs-git/src/rxkad
-I/usr/people/clc31/src/openafs-git/src/config
-I/usr/people/clc31/src/openafs-git/src/fsint
-I/usr/people/clc31/src/openafs-git/src/vlserver
-I/usr/people/clc31/src/openafs-git/src/libuafs
-I/usr/people/clc31/src/openafs-git/include
-I/usr/people/clc31/src/openafs-git/include/afs -O -DKERNEL
-DAFS_WEB_ENHANCEMENTS -I. -I.. -I/usr/people/clc31/src/openafs-git/src/config
-I/usr/include/sys/fs -D_SGI_MP_SOURCE -DKERNEL -DUKERNEL -DAFS_SGI_ENV -c
/usr/people/clc31/src/openafs-git/src/afs/afs_daemons.c
cc-1204 cc: WARNING File =
/usr/people/clc31/src/openafs-git/src/afs/afs_prototypes.h, Line = 1166
The indicated declaration is not visible outside of the function.
struct pathname *pnp, int flags, struct vnode *rdir,
^
cc-1204 cc: WARNING File =
/usr/people/clc31/src/openafs-git/src/afs/afs_prototypes.h, Line = 1224
The indicated declaration is not visible outside of the function.
char *aname2, struct pathname *npnp,
^
cc-1515 cc: ERROR File =
/usr/people/clc31/src/openafs-git/src/afs/afs_daemons.c, Line = 581
A value of type "int" cannot be assigned to an entity of type "struct cred *".
tmpcred = OSI_GET_CURRENT_CRED();
^
cc-1020 cc: ERROR File =
/usr/people/clc31/src/openafs-git/src/afs/afs_daemons.c, Line = 589
The identifier "vnode_t" is undefined.
AFS_RWLOCK((vnode_t *) tvc, 1);
^
cc-1029 cc: ERROR File =
/usr/people/clc31/src/openafs-git/src/afs/afs_daemons.c, Line = 589
An expression is expected at this point.
AFS_RWLOCK((vnode_t *) tvc, 1);
^
cc-1018 cc: ERROR File =
/usr/people/clc31/src/openafs-git/src/afs/afs_daemons.c, Line = 589
An unmatched left parentheses "(" appears in an expression.
AFS_RWLOCK((vnode_t *) tvc, 1);
^
cc-1029 cc: ERROR File =
/usr/people/clc31/src/openafs-git/src/afs/afs_daemons.c, Line = 596
An expression is expected at this point.
AFS_RWUNLOCK((vnode_t *) tvc, 1);
^
cc-1018 cc: ERROR File =
/usr/people/clc31/src/openafs-git/src/afs/afs_daemons.c, Line = 596
An unmatched left parentheses "(" appears in an expression.
AFS_RWUNLOCK((vnode_t *) tvc, 1);
^
6 errors detected in the compilation of
"/usr/people/clc31/src/openafs-git/src/afs/afs_daemons.c".
gmake[1]: *** [../JUAFS/afs_daemons.o] Error 2
gmake[1]: Leaving directory
`/usr/people/clc31/src/openafs-git/src/libuafs/JUAFS/JUAFS'
gmake: *** [JUAFS/libjuafs.a] Error 2
</pre>
Strange because these don't cause problems outside of UAFS. So rather than
hunt down spurious problems elsewhere, I think it's an issue with the UAFS
makefiles.
Note that any changes you make to any of the UAFS makefiles are overwritten if
you do a make from the source root, so to continue the compilation with custom
changes you have to do a make from within the JUAFS dir.
____________________________________________________________
FREE 3D EARTH SCREENSAVER - Watch the Earth right on your desktop!
Check it out at http://www.inbox.com/earth
_______________________________________________
OpenAFS-devel mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-devel