# License. For details, see the LICENSE file in the top-level source
# directory or online at http://www.openafs.org/dl/license10.html
-# MakefileProto for Solaris systems
-#
-DEST=@DEST@
-TOP_INCDIR=@TOP_INCDIR@
-TOP_LIBDIR=@TOP_LIBDIR@
-TOP_SRCDIR=@TOP_SRCDIR@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-bindir=@bindir@
-sbindir=@sbindir@
-libexecdir=@libexecdir@
-libdir=@libdir@
-includedir=@includedir@
-mandir=@mandir@
-afssrvbindir=@afssrvbindir@
-afssrvsbindir=@afssrvsbindir@
-afssrvlibexecdir=@afssrvlibexecdir@
-afskerneldir=@afskerneldir@
-SYS_NAME=@AFS_SYSNAME@
-
-include config/Makefile.${SYS_NAME}
+srcdir=@srcdir@
+include @TOP_OBJDIR@/src/config/Makefile.config
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+
# OS specific object files:
AFS_OS_OBJS = \
+ osi_crypto.o \
+ osi_gcpags.o \
osi_groups.o \
osi_inode.o \
+<sunx86_511 sun4x_511>
+ osi_ioctl.o \
+<all>
osi_file.o \
osi_sleep.o \
+ osi_vcache.o \
osi_vm.o \
- osi_vnodeops.o \
- xdr_int64.o
+ osi_vnodeops.o
AFS_OS_NFSOBJS = \
osi_vfsops_nfs.o
DEFINES= -DAFSDEBUG -DKERNEL -DAFS -DVICE -DNFS -DUFS -DINET -DQUOTA -DGETMOUNT
#These are redundant
#LD = /usr/ccs/bin/ld
-#LORDER = /usr/ccs/bin/lorder
#CC = /opt/SUNWspro/bin/cc
-KDEFS= -Dsun4c -DSUN4C_60 -DNFSCLIENT -DSYSACCT -DOLDSCSI -DVDDRV -D_KERNEL \
- -DSYSV -dn ${ARCH_DEFS}
+KDEFS= -D_KERNEL -DSYSV -dn ${ARCH_DEFS}
+<sunx86_510 sunx86_511>
+DBUG= -Wu,-save_args
+
+<sun4x_58 sun4x_59 sun4x_510 sun4x_511>
+KDEFS_32 = -xarch=v8
+KDEFS_64 = -xarch=v9
-<sun4x_57 sun4x_58 sun4x_59>
+<sunx86_58 sunx86_59 sunx86_510>
KDEFS_32 =
-KDEFS_64 = -xarch=v9
+KDEFS_64 = -xarch=amd64 -xmodel=kernel
+
+<sunx86_511>
+KDEFS_32 =
+KDEFS_64 = -m64 -xmodel=kernel
<all>
-CFLAGS=-I. -I.. -I${TOP_SRCDIR}/config ${FSINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG}
+CFLAGS=-I. -I.. -I${TOP_OBJDIR}/src/config ${FSINCLUDES} $(DEFINES) $(KDEFS) @SOLARIS_CC_KOPTS@ ${DBUG}
+
+<sun4x_58 sunx86_58 sun4x_59 sunx86_59>
+LDFLAGS=-r -dy -N drv/ip -N drv/udp -N strmod/rpcmod
+
+<all -sun4x_58 -sunx86_58 -sun4x_59 -sunx86_59>
+LDFLAGS=-r -dy -N drv/ip -N drv/udp -N strmod/rpcmod -N fs/ufs
# Name of directory to hold object files and libraries.
-<all -sun4x_57 -sun4x_58 -sun4x_59>
-KOBJ = MODLOAD
-<sun4x_57 sun4x_58 sun4x_59>
+<all -sun4x_510 sun4x_511 sunx86_511>
KOBJ = MODLOAD32 MODLOAD64
-
+<sun4x_510 sun4x_511 sunx86_511>
+KOBJ = MODLOAD64
# This tells Makefile.common to use it's single directory build target.
-<all -sun4x_57 -sun4x_58 -sun4x_59>
-COMPDIRS = single_compdir
-INSTDIRS = single_instdir
-DESTDIRS = single_destdir
-
-<sun4x_57 sun4x_58 sun4x_59>
+<all>
COMPDIRS = solaris_compdirs
INSTDIRS = solaris_instdirs
DESTDIRS = solaris_destdirs
-<all>
include Makefile.common
setup:
-$(RM) -f h net netinet rpc ufs nfs machine sys inet
- -ln -s /usr/include/sys h
- -ln -s /usr/include/net net
- -ln -s /usr/include/netinet netinet
- -ln -s /usr/include/rpc rpc
- -ln -s /usr/include/sys sys
- -ln -s /usr/include/nfs nfs
- -ln -s /usr/include/inet inet
- -ln -s /usr/include/ufs ufs
+ -ln -fs /usr/include/sys h
+ -ln -fs /usr/include/net net
+ -ln -fs /usr/include/netinet netinet
+ -ln -fs /usr/include/rpc rpc
+ -ln -fs /usr/include/sys sys
+ -ln -fs /usr/include/nfs nfs
+ -ln -fs /usr/include/inet inet
+ -ln -fs /usr/include/ufs ufs
for t in ${KOBJ} ; do \
echo Making directory: $$t; \
mkdir -p $$t; \
$(RM) -f $$t/Makefile.common $$t/Makefile $$t/config ; \
- ln -s ../Makefile.common $$t/Makefile.common ; \
- ln -s ../Makefile $$t/Makefile ;\
- ln -s ../config $$t/config ;\
+ ln -fs ../Makefile.common $$t/Makefile.common ; \
+ ln -fs ../Makefile $$t/Makefile ;\
+ ln -fs ../config $$t/config ;\
done
## This is the target for a Solaris 7. Here we build both the 32 bit and
## the 64 bit libafs in MODLOAD32 and MODLOAD64 directories respectively
-<sun4x_57 sun4x_58 sun4x_59>
${COMPDIRS} ${INSTDIRS} ${DESTDIRS}:
for t in ${KOBJ} ; do \
echo Building directory: $$t ; \
export ARCH_DEFS ; \
export BITS ; \
cd $$t ; \
- $(MAKE) $@_libafs ; \
+ $(MAKE) $@_libafs || exit $$? ; \
cd ../ ;\
done
-solaris_compdirs_libafs: libafs
+solaris_compdirs_libafs: depsrcs libafs
solaris_instdirs_libafs: install_libafs
solaris_destdirs_libafs: dest_libafs
-<all>
-
# Below this line are targets when in the COMMON directory:
LIBAFS = libafs.o
LIBAFSNONFS = libafs.nonfs.o
-<all -sun4x_57 -sun4x_58 -sun4x_59>
-INST_LIBAFS = ${DESTDIR}${afskerneldir}/${LIBAFS}
-INST_LIBAFSNONFS = ${DESTDIR}${afskerneldir}/${LIBAFSNONFS}
+INST_LIBAFSNONFS = ${DESTDIR}${afskerneldir}/libafs${BITS}.nonfs.o
+INST_LIBAFS = ${DESTDIR}${afskerneldir}/libafs${BITS}.o
-DEST_LIBAFS = ${DEST}/root.client/usr/vice/etc/modload/${LIBAFS}
-DEST_LIBAFSNONFS = ${DEST}/root.client/usr/vice/etc/modload/${LIBAFSNONFS}
+DEST_LIBAFSNONFS = ${DEST}/root.client/usr/vice/etc/modload/libafs${BITS}.nonfs.o
+DEST_LIBAFS = ${DEST}/root.client/usr/vice/etc/modload/libafs${BITS}.o
# Without this line, gmake tries to build libafs.o
.PHONY: libafs
-libafs: $(LIBAFSNONFS)
-install_libafs: $(INST_LIBAFSNONFS)
-dest_libafs: $(DEST_LIBAFSNONFS)
-
-
-$(INST_LIBAFS): $(LIBAFS)
- ${INSTALL} -f $? $@
+libafs: $(LIBAFSNONFS) $(LIBAFS)
-$(INST_LIBAFSNONFS): $(LIBAFSNONFS)
- ${INSTALL} -f $? $@
+install_libafs: $(LIBAFS) $(LIBAFSNONFS)
+ ${INSTALL} -d ${DESTDIR}${afskerneldir}
+ ${INSTALL} -m 644 $(LIBAFS) $(INST_LIBAFS)
+ ${INSTALL} -m 644 $(LIBAFSNONFS) $(INST_LIBAFSNONFS)
-$(DEST_LIBAFS): $(LIBAFS)
- ${INSTALL} -f $? $@
+dest_libafs: $(LIBAFS) $(LIBAFSNONFS)
+ ${INSTALL} -d ${DEST}/root.client/usr/vice/etc/modload
+ ${INSTALL} -m 644 $(LIBAFS) $(DEST_LIBAFS)
+ ${INSTALL} -m 644 $(LIBAFSNONFS) $(DEST_LIBAFSNONFS)
-$(DEST_LIBAFSNONFS): $(LIBAFSNONFS)
- ${INSTALL} -f $? $@
+# See $TOP_SRCDIR/config/cc-wrapper for an explanation/usage of
+# OPENAFS_CC_WRAPPER_DEBUG_FLAG
-<all>
${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS)
$(RM) -f $@
- $(LD) -r -o $@ $(AFSAOBJS) ${AFSNFSOBJS}
+ OPENAFS_CC_WRAPPER_DEBUG_FLAG="$(KERN_DBG)" $(LD_WRAPPER) $(LD) $(LDFLAGS) -o $@ $(AFSAOBJS) ${AFSNFSOBJS}
${LIBAFSNONFS}: $(AFSAOBJS) $(AFSNONFSOBJS)
$(RM) -f $@
- $(LD) -r -o $@ $(AFSAOBJS) ${AFSNONFSOBJS}
-
-<sun4x_57 sun4x_58 sun4x_59>
-
-libafs: ${LIBAFSNONFS}
-
-install_libafs: ${LIBAFSNONFS}
- ${INSTALL} -f ${LIBAFSNONFS} ${DESTDIR}${afskerneldir}/libafs${BITS}.nonfs.o
-
-dest_libafs: ${LIBAFSNONFS}
- ${INSTALL} -f ${LIBAFSNONFS} ${DEST}/root.client/usr/vice/etc/modload/libafs${BITS}.nonfs.o
-
-<all>
-
-# Solaris specific objects
-osi_groups.o: $(AFS)/osi_groups.c
- $(CRULE1)
-osi_inode.o: $(AFS)/osi_inode.c
- $(CRULE1)
-osi_file.o: $(AFS)/osi_file.c
- $(CRULE1)
-osi_sleep.o: $(AFS)/osi_sleep.c
- $(CRULE1)
-osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c
- $(CRULE1) -o osi_vfsops_nfs.o
-osi_vfsops.o: $(AFS)/osi_vfsops.c
- $(CRULE1) -DAFS_NONFSTRANS
-osi_vm.o: $(AFS)/osi_vm.c
- $(CRULE1)
-osi_vnodeops.o: $(AFS)/osi_vnodeops.c
- $(CRULE1)
-xdr_int64.o: $(RX)/xdr_int64.c
- $(CRULE1)
+ OPENAFS_CC_WRAPPER_DEBUG_FLAG="$(KERN_DBG)" $(LD_WRAPPER) $(LD) $(LDFLAGS) -o $@ $(AFSAOBJS) ${AFSNONFSOBJS}