# License. For details, see the LICENSE file in the top-level source
# directory or online at http://www.openafs.org/dl/license10.html
-SHELL=/bin/sh
-DEST=@DEST@
-TOP_SRCDIR=@TOP_SRCDIR@
-TOP_INCDIR=@TOP_INCDIR@
-TOP_LIBDIR=@TOP_LIBDIR@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-bindir=@bindir@
-sbindir=@sbindir@
-libexecdir=@libexecdir@
-libdir=@libdir@
-includedir=@includedir@
-mandir=@mandir@
-afskerneldir=@afskerneldir@
-afssrvbindir=@afssrvbindir@
-afssrvsbindir=@afssrvsbindir@
-afssrvlibexecdir=@afssrvlibexecdir@
-
-# Systype-generic items
-SYS_NAME=@AFS_SYSNAME@
-MKAFS_OSTYPE=@MKAFS_OSTYPE@
-
-# Systype-specific items
-LINUX_KERNEL_PATH=@LINUX_KERNEL_PATH@
-LINUX_VERSION=@LINUX_VERSION@
-DARWIN_INFOFILE=@DARWIN_INFOFILE@
-
-# Other items
-LIB_AFSDB=@LIB_AFSDB@
+srcdir=@srcdir@
+include @TOP_OBJDIR@/src/config/Makefile.config
# Enable build+install of obsolete and insecure packages
# Set to anything other than YES, or comment out to disable the build
ENABLE_KERNEL_MODULE=@ENABLE_KERNEL_MODULE@
-include src/config/Makefile.${SYS_NAME}
-
# To compile AFS from scratch in the src tree run "make".
# This recursively calls "make install ..." and does not depend on the
# existence of any non-standard programs.
install: all install_dirs
$(MAKE) build COMPILE_PART2B=install
-install_nolibafs: all install_dirs
+install_nolibafs: all_nolibafs install_dirs
$(MAKE) build TARGET=finale_nolibafs COMPILE_PART2B=install
-install_only_libafs: all install_dirs
+install_only_libafs: only_libafs install_dirs
$(MAKE) build TARGET=libafs COMPILE_PART2B=install
dest: all dest_dirs
$(MAKE) build COMPILE_PART2B=dest
-dest_nolibafs: all dest_dirs
+dest_nolibafs: all_nolibafs dest_dirs
$(MAKE) build TARGET=finale_nolibafs COMPILE_PART2B=dest
-dest_only_libafs: all dest_dirs
+dest_only_libafs: only_libafs dest_dirs
$(MAKE) build TARGET=libafs COMPILE_PART2B=dest
-${TOP_INCDIR} ${TOP_INCDIR}/afs ${TOP_LIBDIR}:
+${TOP_INCDIR} ${TOP_INCDIR}/afs ${TOP_LIBDIR} ${TOP_JLIBDIR}:
mkdir -p $@
install_dirs: force
mkdir -p ${DEST}/root.server/etc
mkdir -p ${DEST}/root.server/usr/afs/bin
+# This is needed to get these dirs built prior to stuff being installed into them
+build_dirs_rx:
+ mkdir -p ${TOP_OBJDIR}/src/libafs/rx
+ mkdir -p ${TOP_OBJDIR}/src/libuafs/rx
+
project: cmd comerr
+tests: all
+ ${COMPILE_PART1} tests ${COMPILE_PART2}
+
config:
${COMPILE_PART1} config ${COMPILE_PART2}
cmd: comerr
@case ${SYS_NAME} in \
- sgi_6* | sun4x_57 | sun4x_58 | hp_ux11* | sparc64_linux* | alpha_linux* ) \
+ sgi_6* | sun*_5[789] | hp_ux11* | sparc64_linux* | alpha_linux* ) \
${COMPILE_PART1} cmd ${COMPILE_PART2}64 ;; \
*) \
${COMPILE_PART1} cmd ${COMPILE_PART2} ;; \
rxgen: pinstall
${COMPILE_PART1} rxgen ${COMPILE_PART2}
-rxobj:
-
-kernrx:
- ${COMPILE_PART1} rx ${COMPILE_PART2}
-
-rx: project lwp rxgen
+rx: project lwp rxgen build_dirs_rx
${COMPILE_PART1} rx ${COMPILE_PART2}
rxstat: rx
${COMPILE_PART1} rxstat ${COMPILE_PART2}
-rxincls: rxobj
- ${COMPILE_PART1} rx ${COMPILE_PART2}
-
rxtests: rxdebug
-rxdebug: rx
+rxdebug: rx sys
${COMPILE_PART1} rxdebug ${COMPILE_PART2}
fsint: project kfsint
-kfsint: lwp rxgen rxincls
+kfsint: lwp rxgen rx
${COMPILE_PART1} fsint ${COMPILE_PART2}
export2: project fsint
export: fsint
@case ${SYS_NAME} in \
- rs_aix*) \
- ${COMPILE_PART1} export ${COMPILE_PART2} ;; \
- * ) echo skipping export for ${SYS_NAME} ;; \
+ rs_aix*) \
+ ${COMPILE_PART1} export ${COMPILE_PART2} ;; \
+ *) \
+ echo skipping export for ${SYS_NAME} ;; \
esac
afs: export
${COMPILE_PART1} afs ${COMPILE_PART2}
-des: config
+des: config pinstall
${COMPILE_PART1} des ${COMPILE_PART2}
-sys: project des rx rxstat fsint
+sys: project afs des rx rxstat fsint
${COMPILE_PART1} sys ${COMPILE_PART2}
-rxkad: project des
+rxkad: project des rx
${COMPILE_PART1} rxkad ${COMPILE_PART2}
-kernauth:
- ${COMPILE_PART1} auth ${COMPILE_PART2}
-
auth: project comerr des lwp rx sys rxkad audit
${COMPILE_PART1} auth ${COMPILE_PART2}
kauth: project ubik cmd auth comerr ptserver audit libacl
${COMPILE_PART1} kauth ${COMPILE_PART2}
-dauth: project ubik cmd auth comerr
+dauth: project ubik cmd auth kauth comerr
${COMPILE_PART1} dauth ${COMPILE_PART2}
libacl: project ptserver
${COMPILE_PART1} libacl ${COMPILE_PART2}
-kerndir:
- ${COMPILE_PART1} dir ${COMPILE_PART2}
-
dir: project libacl
${COMPILE_PART1} dir ${COMPILE_PART2}
${COMPILE_PART1} vlserver ${COMPILE_PART2}
viced: project vlserver audit
- ${COMPILE_PART1} viced ${COMPILE_PART2}
+ ${COMPILE_PART1} viced ${COMPILE_PART2}
tviced: project viced vlserver libafsrpc libafsauthent
case ${SYS_NAME} in \
- alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \
- ${COMPILE_PART1} tviced ${COMPILE_PART2} ;; \
+ alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux110|*fbsd*) \
+ ${COMPILE_PART1} tviced ${COMPILE_PART2} ;; \
*) \
echo Not building MT viced for ${SYS_NAME} ;; \
esac
null: project
${COMPILE_PART1} null ${COMPILE_PART2}
-gtx: project null auth # kauth rxkad ?
+${TOP_LIBDIR}/libtermlib.a:
+ $(RM) -f ${TOP_LIBDIR}/libtermlib.a
case ${SYS_NAME} in \
- rs_aix* | sun4x_5? | sgi_6? | *linux* | ppc_darwin* | *fbsd*) \
- $(RM) -f ${TOP_LIBDIR}/libtermlib.a; \
- ln -s libnull.a ${TOP_LIBDIR}/libtermlib.a; \
- ${COMPILE_PART1} gtx ${COMPILE_PART2};; \
- *) \
- $(RM) -f ${TOP_LIBDIR}/libtermlib.a; \
- ln -s /usr/lib/libtermlib.a ${TOP_LIBDIR}/libtermlib.a; \
- ${COMPILE_PART1} gtx ${COMPILE_PART2};; \
+ rs_aix* | sun4x_* | sunx86_* | sgi_6? | *linux* | ppc_darwin* | *fbsd*) \
+ ln -s libnull.a ${TOP_LIBDIR}/libtermlib.a ;; \
+ *) \
+ ln -s /usr/lib/libtermlib.a ${TOP_LIBDIR}/libtermlib.a ;; \
esac
-fsprobe: project util fsint
+gtx: project null auth kauth ${TOP_LIBDIR}/libtermlib.a
+ ${COMPILE_PART1} gtx ${COMPILE_PART2}
+
+fsprobe: project util fsint volser
${COMPILE_PART1} fsprobe ${COMPILE_PART2}
scout: project gtx fsprobe
${COMPILE_PART1} scout ${COMPILE_PART2}
-uss: des kauth project rx vlserver vol
+uss: des kauth project rx vlserver vol volser
${COMPILE_PART1} uss ${COMPILE_PART2}
bozo: project ntp audit
vfsck: vol
set -x; \
case ${SYS_NAME} in \
- sgi_* | *linux* | rs_aix42 | ppc_darwin* | hp_ux* | *fbsd* ) \
+ sgi_* | *linux* | rs_aix42 | ppc_darwin* | hp_ux* | *fbsd* | *_obsd* | *_nbsd* | sun*_4* ) \
echo skip vfsck for ${SYS_NAME} ;; \
* ) \
${COMPILE_PART1} vfsck ${COMPILE_PART2} ;; \
alpha_dux* ) \
${COMPILE_PART1} sia ${COMPILE_PART2} ;; \
sun4x_55 ) \
- ${COMPILE_PART1} login ${COMPILE_PART2} ;; \
- sun4x_* | hp_ux11* | *linux* | *fbsd* ) \
+ ${COMPILE_PART1} login ${COMPILE_PART2} ;; \
+ parisc_linux24) \
+ echo Skipping pam/login for parisc_linux24 ;; \
+ sun4x_* | sunx86_* | hp_ux11* | *linux* | *fbsd* ) \
${COMPILE_PART1} pam ${COMPILE_PART2} ;; \
- ppc_darwin* ) \
+ ppc_darwin* | *_obsd* | *_nbsd* | hp_ux* ) \
echo Skipping login for ${SYS_NAME} ;; \
* ) \
${COMPILE_PART1} login ${COMPILE_PART2} ;; \
rxstat
-libafs: libafs_setup ${KERNELDIR}
+libafs: lwp libafs_setup ${KERNELDIR}
${COMPILE_PART1} libafs ${COMPILE_PART2}
libafs_tree: libafs_setup ${KERNELDIR}
${INSTALL} -c -f $$f libafs_tree/$$f; \
done
src/config/config src/libafs/MakefileProto.${MKAFS_OSTYPE}.in libafs_tree/Makefile.in ${SYS_NAME}
- ${INSTALL} -c src/config/Makefile.${SYS_NAME}.in libafs_tree/config
+ ${INSTALL} -c src/config/Makefile.config.in libafs_tree/config
${INSTALL} -c src/config/afsconfig.h.in libafs_tree/config
${INSTALL} -c -f -ns configure-libafs libafs_tree/configure
+ case ${SYS_NAME} in \
+ *linux*) \
+ ${INSTALL} -c src/config/make_vnode.pl libafs_tree/config ; \
+ ${INSTALL} -c src/afs/LINUX/osi_vfs.hin libafs_tree/afs ;; \
+ esac
-libuafs: libuafs_setup ${UKERNELDIR}
+libuafs: lwp libuafs_setup ${UKERNELDIR}
set -x; \
case ${SYS_NAME} in \
- hp_ux102* ) \
+ hp_ux102* | *_obsd* | sun*_4* | *_nbsd*) \
echo Skipping libuafs for ${SYS_NAME} ;; \
* ) \
${COMPILE_PART1} libuafs ${COMPILE_PART2} ;; \
log: project auth
${COMPILE_PART1} log ${COMPILE_PART2}
-bu_utils: project
+bu_utils: project usd
${COMPILE_PART1} bu_utils ${COMPILE_PART2}
usd: project
${COMPILE_PART1} usd ${COMPILE_PART2}
-bubasics: project comerr
+bubasics: project comerr rx
${COMPILE_PART1} bubasics ${COMPILE_PART2}
-butm: project bubasics usd
+butm: project bubasics usd uss
${COMPILE_PART1} butm ${COMPILE_PART2}
-butc: project bubasics butm budb bucoord cmd
+butc: project bubasics butm budb bucoord cmd rxgen rx
${COMPILE_PART1} butc ${COMPILE_PART2}
tbutc: project bubasics butm budb bucoord cmd butc
case ${SYS_NAME} in \
- alpha_dux*|sgi_*|sun4x_*|rs_aix4*|*linux*|hp_ux110) \
+ alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix4*|*linux*|hp_ux110) \
${COMPILE_PART1} tbutc ${COMPILE_PART2} ;; \
*) \
echo Not building MT butc for ${SYS_NAME} ;; \
esac
-budb: project bubasics
+budb: project bubasics uss
${COMPILE_PART1} budb ${COMPILE_PART2}
bucoord: project bubasics budb volser
${COMPILE_PART1} bucoord ${COMPILE_PART2}
-xstat: project
+xstat: project fsint viced
${COMPILE_PART1} xstat ${COMPILE_PART2}
afsmonitor: project gtx xstat
# pthread based user space RX library
libafsrpc: rx rxkad des
case ${SYS_NAME} in \
- alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \
- ${COMPILE_PART1} libafsrpc ${COMPILE_PART2} ;; \
+ alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux110|*fbsd*) \
+ ${COMPILE_PART1} libafsrpc ${COMPILE_PART2} ;; \
*) \
echo Not building MT libafsrpc for ${SYS_NAME} ;; \
esac
libafsauthent: ubik auth kauth libafsrpc
case ${SYS_NAME} in \
- alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \
- ${COMPILE_PART1} libafsauthent ${COMPILE_PART2} ;; \
+ alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux110|*fbsd*) \
+ ${COMPILE_PART1} libafsauthent ${COMPILE_PART2} ;; \
*) \
echo Not building MT libafsrpc for ${SYS_NAME} ;; \
esac
+# pthread based user space RX library
+shlibafsrpc: rx rxkad des
+ case ${SYS_NAME} in \
+ alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux110) \
+ ${COMPILE_PART1} shlibafsrpc ${COMPILE_PART2} ;; \
+ *) \
+ echo Not building shared libafsrpc for ${SYS_NAME} ;; \
+ esac
+
+shlibafsauthent: ubik auth kauth shlibafsrpc
+ case ${SYS_NAME} in \
+ alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux110) \
+ ${COMPILE_PART1} shlibafsauthent ${COMPILE_PART2} ;; \
+ *) \
+ echo Not building shared libafsrpc for ${SYS_NAME} ;; \
+ esac
+
libadmin_real:
${COMPILE_PART1} libadmin ${COMPILE_PART2}
${COMPILE_PART1} libadmin/adminutil ${COMPILE_PART2}
libadmin: libafsauthent bozo
case ${SYS_NAME} in \
- alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \
+ alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux110) \
$(MAKE) libadmin_real ;; \
*) \
echo Not building MT libadmin for ${SYS_NAME} ;; \
esac
+libjafs: libadmin
+ case ${SYS_NAME} in \
+ alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \
+ ${COMPILE_PART1} JAVA/libjafs ${COMPILE_PART2} ;; \
+ *) \
+ echo Not building MT libjafs for ${SYS_NAME} ;; \
+ esac
+
+libjafsadm: libjafs
+
+jafs: libjafs
+
+jafsadm: libjafsadm
+
finale: project cmd comerr afsd allrcmds butc tbutc @ENABLE_KERNEL_MODULE@ libuafs audit kauth log package \
ptserver scout bu_utils ubik uss bozo vfsck volser \
venus update xstat afsmonitor dauth rxdebug libafsrpc \
- libafsauthent libadmin
+ libafsauthent shlibafsrpc shlibafsauthent libadmin
${COMPILE_PART1} finale ${COMPILE_PART2}
finale_nolibafs: project cmd comerr afsd allrcmds butc tbutc libuafs audit kauth log package \
ptserver scout bu_utils ubik uss bozo vfsck volser \
venus update xstat afsmonitor dauth rxdebug libafsrpc \
- libafsauthent libadmin
+ libafsauthent shlibafsrpc shlibafsauthent libadmin
${COMPILE_PART1} finale ${COMPILE_PART2}
# Use washtool to ensure MakefileProto is current and obj/libafs exists.
-${COMPILE_PART1} bucoord ${COMPILE_CLEAN}
-${COMPILE_PART1} xstat ${COMPILE_CLEAN}
-${COMPILE_PART1} afsmonitor ${COMPILE_CLEAN}
+ -${COMPILE_PART1} tests ${COMPILE_CLEAN}
-${COMPILE_PART1} rxdebug ${COMPILE_CLEAN}
-${COMPILE_PART1} libafsrpc ${COMPILE_CLEAN}
-${COMPILE_PART1} libafsauthent ${COMPILE_CLEAN}
+ -${COMPILE_PART1} shlibafsrpc ${COMPILE_CLEAN}
+ -${COMPILE_PART1} shlibafsauthent ${COMPILE_CLEAN}
-${COMPILE_PART1} libadmin ${COMPILE_CLEAN}
-${COMPILE_PART1} libadmin/adminutil ${COMPILE_CLEAN}
-${COMPILE_PART1} libadmin/client ${COMPILE_CLEAN}
-${COMPILE_PART1} libadmin/cfg ${COMPILE_CLEAN}
-${COMPILE_PART1} libadmin/test ${COMPILE_CLEAN}
-${COMPILE_PART1} libadmin/samples ${COMPILE_CLEAN}
+ -${COMPILE_PART1} JAVA/libjafs ${COMPILE_CLEAN}
-${COMPILE_PART1} finale ${COMPILE_CLEAN}
-${COMPILE_PART1} mpp ${COMPILE_CLEAN}
-${COMPILE_PART1} package ${COMPILE_CLEAN}
-${COMPILE_PART1} libuafs ${COMPILE_CLEAN}
-(cd src/libafs; /bin/rm -rf afs afsint config rx)
-(cd src/libuafs; /bin/rm -rf afs afsint config rx des)
- -/bin/rm -rf ${TOP_INCDIR} ${TOP_LIBDIR}
+ -/bin/rm -rf ${TOP_INCDIR} ${TOP_LIBDIR} ${TOP_JLIBDIR}
-/bin/rm -rf libafs_tree ${SYS_NAME}
src/config/Makefile \
src/config/Makefile.version \
src/config/Makefile.version-NOCML \
- src/config/Makefile.${SYS_NAME} \
+ src/config/Makefile.config \
src/dauth/Makefile \
src/des/test/Makefile \
src/des/Makefile \
src/libadmin/samples/Makefile \
src/libadmin/test/Makefile \
src/libadmin/vos/Makefile \
+ src/JAVA/libjafs/Makefile \
src/libafs/Makefile \
+ src/libafs/Makefile.common \
src/libafs/MakefileProto.${MKAFS_OSTYPE} \
src/libafsauthent/Makefile \
src/libafsrpc/Makefile \
src/libuafs/Makefile \
+ src/libuafs/Makefile.common \
src/libuafs/MakefileProto.${MKAFS_OSTYPE} \
src/log/test/Makefile \
src/log/Makefile \
src/rxstat/Makefile \
src/scout/Makefile \
src/sgistuff/Makefile \
+ src/shlibafsauthent/Makefile \
+ src/shlibafsrpc/Makefile \
src/sia/Makefile \
src/sys/Makefile \
src/tbutc/Makefile \
+ src/tests/Makefile \
+ src/tests/run-tests \
+ src/tests/OpenAFS/Dirpath.pm \
src/tsm41/Makefile \
src/tviced/Makefile \
src/ubik/Makefile \
ntp: project volser
@case ${WITH_OBSOLETE} in \
YES) case ${SYS_NAME} in \
- sun4x_58 | *linux* | *fbsd* | ppc_darwin* ) echo skipping ntp for ${SYS_NAME} ;; \
+ sun4x_58 | sunx86_* | *linux* | *fbsd* | ppc_darwin* ) echo skipping ntp for ${SYS_NAME} ;; \
* ) ${COMPILE_PART1} ntp ${COMPILE_PART2} ;; \
esac ;; \
*) echo skipping deprecated target: ntp ;; \
allrcmds: project rcp rlogind
+
+