Add PIC variant for libuafs

Build a libuafs that is built with PIC, so it can be used in shared
libraries on all platforms. Also build PIC variants for libafsutil and
libcmd, since we need them for a PIC libuafs anyway.

Change-Id: I017fa22c3b4dd661123ea92da7b3e5b69ee5c170
Reviewed-on: http://gerrit.openafs.org/3896
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
This commit is contained in:
Andrew Deason 2010-12-13 13:11:02 -06:00 committed by Derrick Brashear
parent adca541d70
commit 8eca6a1153
16 changed files with 689 additions and 9 deletions

View File

@ -400,6 +400,7 @@ case $AFS_SYSNAME in
KINCLUDES='-I$(KROOT)/System/Library/Frameworks/Kernel.framework/Headers'
LWP_OPTMZ="-O2"
REGEX_OBJ="regex.o"
REGEX_OBJ_PIC="pic_regex.o"
XCFLAGS="-no-cpp-precomp"
EXTRA_VLIBOBJS="fstab.o"
SHLIB_LINKER="${MT_CC} \${ARCHFLAGS} -dynamiclib"
@ -419,6 +420,7 @@ case $AFS_SYSNAME in
LWP_OPTMZ="-Os"
OPTMZ="-Os"
REGEX_OBJ="regex.o"
REGEX_OBJ_PIC="pic_regex.o"
EXTRA_VLIBOBJS="fstab.o"
SHLIB_LINKER="${MT_CC} \${ARCHFLAGS} -dynamiclib"
SHLIB_SUFFIX="dylib"
@ -436,6 +438,7 @@ case $AFS_SYSNAME in
LWP_OPTMZ="-Os"
OPTMZ="-Os"
REGEX_OBJ="regex.o"
REGEX_OBJ_PIC="pic_regex.o"
EXTRA_VLIBOBJS="fstab.o"
SHLIB_LINKER="${MT_CC} \${ARCHFLAGS} -dynamiclib"
SHLIB_SUFFIX="dylib"
@ -455,6 +458,7 @@ case $AFS_SYSNAME in
OPTMZ="-Os"
PAM_LIBS="-lpam"
REGEX_OBJ="regex.o"
REGEX_OBJ_PIC="pic_regex.o"
EXTRA_VLIBOBJS="fstab.o"
SHLIB_LINKER="${MT_CC} \${ARCHFLAGS} -dynamiclib"
SHLIB_SUFFIX="dylib"
@ -1021,6 +1025,7 @@ AC_SUBST(PAM_DBG)
AC_SUBST(PAM_OPTMZ)
AC_SUBST(RANLIB)
AC_SUBST(REGEX_OBJ)
AC_SUBST(REGEX_OBJ_PIC)
AC_SUBST(RM)
AC_SUBST(RXDEBUG)
AC_SUBST(SHLIB_CFLAGS)

View File

@ -15,9 +15,10 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
LIBOBJS=cmd_errors.o cmd.o
LIBPICOBJS=cmd_errors_pic.o cmd_pic.o
LIB64OBJS=cmd_errors64.o cmd64.o
all: ${TOP_LIBDIR}/libcmd.a ${TOP_INCDIR}/afs/cmd.h
all: ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/libcmd_pic.a ${TOP_INCDIR}/afs/cmd.h
all64: all ${TOP_LIBDIR}/libcmd64.a
@ -26,6 +27,9 @@ generated: cmd.h cmd_errors.c
${TOP_LIBDIR}/libcmd.a: libcmd.a
${INSTALL_DATA} $? $@
${TOP_LIBDIR}/libcmd_pic.a: libcmd_pic.a
${INSTALL_DATA} $? $@
${TOP_LIBDIR}/libcmd64.a: libcmd64.a
${INSTALL_DATA} $? $@
@ -50,6 +54,14 @@ cmd64.o: cmd.c cmd.h
${CC} $(COMMON_CFLAGS) $(CPPFLAGS) ${XCFLAGS64} \
-c -o cmd64.o ${srcdir}/cmd.c
CFLAGS_cmd_errors_pic.o = -fPIC
cmd_errors_pic.o: cmd_errors.c
$(AFS_CCRULE) cmd_errors.c
CFLAGS_cmd_pic.o = -fPIC
cmd_pic.o: cmd.c cmd.h
$(AFS_CCRULE) cmd.c
libcmd64.a: ${LIB64OBJS} AFS_component_version_number64.o
-$(RM) -f $@
$(AR) crv $@ ${LIB64OBJS} AFS_component_version_number64.o
@ -60,28 +72,40 @@ libcmd.a: ${LIBOBJS} AFS_component_version_number.o
$(AR) crv $@ ${LIBOBJS} AFS_component_version_number.o
$(RANLIB) $@
libcmd_pic.a: ${LIBPICOBJS} AFS_component_version_number_pic.o
-$(RM) -f $@
$(AR) crv $@ ${LIBPICOBJS} AFS_component_version_number_pic.o
$(RANLIB) $@
AFS_component_version_number64.o: AFS_component_version_number.c
${CC} $(COMMON_CFLAGS) $(CPPFLAGS) ${XCFLAGS64} \
-c -o AFS_component_version_number64.o \
AFS_component_version_number.c
AFS_component_version_number_pic.o: AFS_component_version_number.c
${CC} $(COMMON_CFLAGS) $(CPPFLAGS) -fPIC \
-c -o AFS_component_version_number_pic.o \
AFS_component_version_number.c
#
# Install targets
#
install: libcmd.a cmd.h
install: libcmd.a libcmd_pic.a cmd.h
${INSTALL} -d ${DESTDIR}${libdir}/afs
${INSTALL} -d ${DESTDIR}${includedir}/afs
${INSTALL_DATA} libcmd.a ${DESTDIR}${libdir}/afs/libcmd.a
${INSTALL_DATA} libcmd_pic.a ${DESTDIR}${libdir}/afs/libcmd_pic.a
${INSTALL_DATA} cmd.h ${DESTDIR}${includedir}/afs/cmd.h
install64: install libcmd64.a
${INSTALL_DATA} libcmd64.a ${DESTDIR}${libdir}/afs/libcmd64.a
dest: libcmd.a cmd.h
dest: libcmd.a cmd.h libcmd_pic.a
${INSTALL} -d ${DEST}/lib/afs
${INSTALL} -d ${DEST}/include/afs
${INSTALL_DATA} libcmd.a ${DEST}/lib/afs/libcmd.a
${INSTALL_DATA} cmd.h ${DEST}/include/afs/cmd.h
${INSTALL_DATA} libcmd_pic.a ${DEST}/lib/afs/libcmd_pic.a
dest64: dest libcmd64.a
${INSTALL_DATA} libcmd64.a ${DEST}/lib/afs/libcmd64.a

View File

@ -82,6 +82,7 @@ PAM_DBG = @PAM_DBG@
PATH_CPP = @PATH_CPP@
RANLIB = @RANLIB@
REGEX_OBJ = @REGEX_OBJ@
REGEX_OBJ_PIC = @REGEX_OBJ_PIC@
RM = @RM@
RXDEBUG = @RXDEBUG@
ROKEN_HEADERS = @ROKEN_HEADERS@

View File

@ -11,6 +11,7 @@
SHELL=/bin/sh
INCLUDE= -I. -I/usr/include -I${TOP_OBJDIR}/src/config
UOBJ =../UAFS
PICOBJ =../UAFS.pic
JUAFS =../JUAFS
WEBOBJ=../AFSWEB
AFS =../afs
@ -56,7 +57,8 @@ COMMON_INCLUDE = -I. -I.. -I../nfs \
# Build rules - CC and CFLAGS are defined in system specific MakefileProtos.
all: ${TOP_LIBDIR}/$(LIBJUAFS) ${TOP_LIBDIR}/$(LIBUAFS) linktest
all: ${TOP_LIBDIR}/$(LIBJUAFS) ${TOP_LIBDIR}/$(LIBUAFS) \
${TOP_LIBDIR}/libuafs_pic.a linktest
${TOP_LIBDIR}/$(LIBAFSWEB): AFSWEB/$(LIBAFSWEB)
${INSTALL_DATA} $? $@
@ -67,9 +69,18 @@ ${TOP_LIBDIR}/$(LIBAFSWEBKRB): AFSWEB/$(LIBAFSWEBKRB)
${TOP_LIBDIR}/$(LIBUAFS): UAFS/$(LIBUAFS)
${INSTALL_DATA} $? $@
${TOP_LIBDIR}/libuafs_pic.a: UAFS.pic/libuafs_pic.a
${INSTALL_DATA} $? $@
${TOP_LIBDIR}/$(LIBJUAFS): JUAFS/$(LIBJUAFS)
${INSTALL_DATA} $? $@
${TOP_LIBDIR}/perl/AFS/ukernel.so: PERLUAFS/ukernel.so
${INSTALL_DATA} $? $@
${TOP_LIBDIR}/perl/AFS/ukernel.pm: PERLUAFS/ukernel.pm
${INSTALL_DATA} $? $@
webinstall: all \
${TOP_LIBDIR}/$(LIBAFSWEB) \
${TOP_LIBDIR}/$(LIBAFSWEBKRB)
@ -84,6 +95,7 @@ linktest: UAFS/$(LIBUAFS)
CRULE1= $(CC) $(COMMON_INCLUDE) $(OPTF) -DKERNEL $(LIBJUAFS_FLAGS) $(CFLAGS) -c $?
CRULE2= $(CC) $(COMMON_INCLUDE) $(OPTF) $(WEBOPTS) -DKERNEL $(LIBJUAFS_FLAGS) $(CFLAGS) -c $?
CRULEPIC=$(CC) $(COMMON_INCLUDE) $(OPTF) -DKERNEL $(LIBJUAFS_FLAGS) $(CFLAGS) -fPIC -c $?
UAFSOBJ = \
$(UOBJ)/afs_atomlist.o \
@ -227,6 +239,148 @@ UAFSOBJ = \
$(UOBJ)/xdr_mem.o \
$(UOBJ)/xdr_len.o
PICUAFSOBJ = \
$(PICOBJ)/afs_atomlist.o \
$(PICOBJ)/afs_lhash.o \
$(PICOBJ)/afs_analyze.o \
$(PICOBJ)/afs_error.o \
$(PICOBJ)/afs_axscache.o \
$(PICOBJ)/afs_buffer.o \
$(PICOBJ)/afs_bypasscache.o \
$(PICOBJ)/afs_callback.o \
$(PICOBJ)/afs_cbqueue.o \
$(PICOBJ)/afs_cell.o \
$(PICOBJ)/afs_chunk.o \
$(PICOBJ)/afs_conn.o \
$(PICOBJ)/afs_daemons.o \
$(PICOBJ)/afs_dcache.o \
$(PICOBJ)/afs_dir.o \
$(PICOBJ)/afs_disconnected.o \
$(PICOBJ)/afs_dynroot.o \
$(PICOBJ)/afs_icl.o \
$(PICOBJ)/afs_init.o \
$(PICOBJ)/afs_lock.o \
$(PICOBJ)/afs_mariner.o \
$(PICOBJ)/afs_memcache.o \
$(PICOBJ)/afs_fetchstore.o \
$(PICOBJ)/afs_osidnlc.o \
$(PICOBJ)/afs_osi_pag.o \
$(PICOBJ)/afs_segments.o \
$(PICOBJ)/afs_server.o \
$(PICOBJ)/afs_stat.o \
$(PICOBJ)/afs_syscall.o \
$(PICOBJ)/afs_tokens.o \
$(PICOBJ)/afs_user.o \
$(PICOBJ)/afs_util.o \
$(PICOBJ)/afs_vcache.o \
$(PICOBJ)/afs_warn.o \
$(PICOBJ)/afs_osi_uio.o \
$(PICOBJ)/afs_vnop_access.o \
$(PICOBJ)/afs_vnop_attrs.o \
$(PICOBJ)/afs_vnop_create.o \
$(PICOBJ)/afs_vnop_dirops.o \
$(PICOBJ)/afs_vnop_fid.o \
$(PICOBJ)/afs_vnop_flock.o \
$(PICOBJ)/afs_vnop_link.o \
$(PICOBJ)/afs_vnop_lookup.o \
$(PICOBJ)/afs_vnop_open.o \
$(PICOBJ)/afs_vnop_read.o \
$(PICOBJ)/afs_vnop_readdir.o \
$(PICOBJ)/afs_vnop_remove.o \
$(PICOBJ)/afs_vnop_rename.o \
$(PICOBJ)/afs_vnop_strategy.o \
$(PICOBJ)/afs_vnop_symlink.o \
$(PICOBJ)/afs_vnop_write.o \
$(PICOBJ)/afs_volume.o \
$(PICOBJ)/afs_call.o \
$(PICOBJ)/afs_pioctl.o \
$(PICOBJ)/osi_vfsops.o \
$(PICOBJ)/afs_usrops.o \
$(PICOBJ)/afsd.o \
$(PICOBJ)/afsd_uafs.o \
$(PICOBJ)/xdr.o \
$(PICOBJ)/xdr_afsuuid.o \
$(PICOBJ)/afs_uuid.o \
$(PICOBJ)/assert.o \
$(PICOBJ)/osi_vnodeops.o \
$(PICOBJ)/osi_vm.o \
$(PICOBJ)/osi_groups.o \
$(PICOBJ)/osi_gcpags.o \
$(PICOBJ)/osi_vcache.o \
$(PICOBJ)/afsaux.o \
$(PICOBJ)/Kvice.xdr.o \
$(PICOBJ)/xdr_arrayn.o \
$(PICOBJ)/Kvice.cs.o \
$(PICOBJ)/fcrypt.o \
$(PICOBJ)/rx.o \
$(PICOBJ)/rx_rdwr.o \
$(PICOBJ)/rx_clock.o \
$(PICOBJ)/rx_event.o \
$(PICOBJ)/rx_globals.o \
$(PICOBJ)/rx_identity.o \
$(PICOBJ)/rx_kmutex.o \
$(PICOBJ)/rx_knet.o \
$(PICOBJ)/rx_kcommon.o \
$(PICOBJ)/rx_misc.o \
$(PICOBJ)/rx_multi.o \
$(PICOBJ)/rx_null.o \
$(PICOBJ)/rx_opaque.o \
$(PICOBJ)/rx_getaddr.o \
$(PICOBJ)/rx_stats.o \
$(PICOBJ)/rx_packet.o \
$(PICOBJ)/rx_conncache.o \
$(PICOBJ)/xdr_rx.o \
$(PICOBJ)/Kvldbint.cs.o \
$(PICOBJ)/Kvldbint.xdr.o \
$(PICOBJ)/Kcallback.ss.o \
$(PICOBJ)/crypt_conn.o \
$(PICOBJ)/AFS_component_version_number.o \
$(PICOBJ)/afs_exporter.o \
$(PICOBJ)/rxkad_client.o \
$(PICOBJ)/rxkad_common.o \
$(PICOBJ)/casestrcpy.o \
$(PICOBJ)/dirpath.o \
$(PICOBJ)/fileutil.o \
$(PICOBJ)/netutils.o \
$(PICOBJ)/et_name.o \
$(PICOBJ)/com_err.o \
$(PICOBJ)/error_msg.o \
$(PICOBJ)/uerrors.o \
$(PICOBJ)/kaerrors.o \
$(PICOBJ)/ktc_errors.o \
$(PICOBJ)/rxkad_errs.o \
$(PICOBJ)/authclient.o \
$(PICOBJ)/authcon.o \
$(PICOBJ)/cellconfig.o \
$(PICOBJ)/keys.o \
$(PICOBJ)/client.o \
$(PICOBJ)/acfg_errors.o \
$(PICOBJ)/kaaux.o \
$(PICOBJ)/kalocalcell.o \
$(PICOBJ)/kauth.cs.o \
$(PICOBJ)/kauth.xdr.o \
$(PICOBJ)/ktc.o \
$(PICOBJ)/ptint.cs.o \
$(PICOBJ)/ptint.xdr.o \
$(PICOBJ)/ptuser.o \
$(PICOBJ)/pterror.o \
$(PICOBJ)/ticket.o \
$(PICOBJ)/katoken.o \
$(PICOBJ)/ubik_int.cs.o \
$(PICOBJ)/ubik_int.xdr.o \
$(PICOBJ)/ubikclient.o \
$(PICOBJ)/user.o \
$(PICOBJ)/hostparse.o \
$(PICOBJ)/Krxstat.ss.o \
$(PICOBJ)/Krxstat.xdr.o \
$(PICOBJ)/rxstat.o \
$(PICOBJ)/xdr_int32.o \
$(PICOBJ)/xdr_int64.o \
$(PICOBJ)/token.xdr.o \
$(PICOBJ)/token.o \
$(PICOBJ)/xdr_mem.o \
$(PICOBJ)/xdr_len.o
AFSWEBOBJ = \
$(WEBOBJ)/afs_atomlist.o \
$(WEBOBJ)/afs_lhash.o \
@ -939,6 +1093,297 @@ $(UOBJ)/xdr_mem.o: $(TOP_SRC_RX)/xdr_mem.c
$(UOBJ)/xdr_len.o: $(TOP_SRC_RX)/xdr_len.c
$(CRULE1)
# These files are for the PIC version of libuafs
$(PICOBJ)/afs_atomlist.o: $(TOP_SRCDIR)/util/afs_atomlist.c
$(CRULEPIC)
$(PICOBJ)/afs_lhash.o: $(TOP_SRCDIR)/util/afs_lhash.c
$(CRULEPIC)
$(PICOBJ)/afs_analyze.o: $(TOP_SRC_AFS)/afs_analyze.c
$(CRULEPIC)
$(PICOBJ)/afs_axscache.o: $(TOP_SRC_AFS)/afs_axscache.c
$(CRULEPIC)
$(PICOBJ)/afs_buffer.o: $(TOP_SRC_AFS)/afs_buffer.c
$(CRULEPIC)
$(PICOBJ)/afs_bypasscache.o: $(TOP_SRC_AFS)/afs_bypasscache.c
$(CRULEPIC)
$(PICOBJ)/afs_cell.o: $(TOP_SRC_AFS)/afs_cell.c
$(CRULEPIC)
$(PICOBJ)/afs_conn.o: $(TOP_SRC_AFS)/afs_conn.c
$(CRULEPIC)
$(PICOBJ)/afs_dcache.o: $(TOP_SRC_AFS)/afs_dcache.c
$(CRULEPIC)
$(PICOBJ)/afs_dynroot.o: $(TOP_SRC_AFS)/afs_dynroot.c
$(CRULEPIC)
$(PICOBJ)/afs_disconnected.o: $(TOP_SRC_AFS)/afs_disconnected.c
$(CRULEPIC)
$(PICOBJ)/afs_error.o: $(TOP_SRC_AFS)/afs_error.c
$(CRULEPIC)
$(PICOBJ)/afs_init.o: $(TOP_SRC_AFS)/afs_init.c
$(CRULEPIC)
$(PICOBJ)/afs_mariner.o: $(TOP_SRC_AFS)/afs_mariner.c
$(CRULEPIC)
$(PICOBJ)/afs_osidnlc.o: $(TOP_SRC_AFS)/afs_osidnlc.c
$(CRULEPIC)
$(PICOBJ)/afs_osi.o: $(TOP_SRC_AFS)/afs_osi.c
$(CRULEPIC)
$(PICOBJ)/afs_osi_pag.o: $(TOP_SRC_AFS)/afs_osi_pag.c
$(CRULEPIC)
$(PICOBJ)/afs_segments.o: $(TOP_SRC_AFS)/afs_segments.c
$(CRULEPIC)
$(PICOBJ)/afs_server.o: $(TOP_SRC_AFS)/afs_server.c
$(CRULEPIC)
$(PICOBJ)/afs_tokens.o: $(TOP_SRC_AFS)/afs_tokens.c
$(CRULEPIC)
$(PICOBJ)/afs_user.o: $(TOP_SRC_AFS)/afs_user.c
$(CRULEPIC)
$(PICOBJ)/afs_util.o: $(TOP_SRC_AFS)/afs_util.c
$(CRULEPIC)
$(PICOBJ)/afs_vcache.o: $(TOP_SRC_AFS)/afs_vcache.c
$(CRULEPIC)
$(PICOBJ)/afs_warn.o: $(TOP_SRC_AFS)/afs_warn.c
$(CRULEPIC)
$(PICOBJ)/afs_osi_uio.o: $(TOP_SRC_AFS)/afs_osi_uio.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_access.o: $(TOP_SRC_VNOPS)/afs_vnop_access.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_attrs.o: $(TOP_SRC_VNOPS)/afs_vnop_attrs.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_create.o: $(TOP_SRC_VNOPS)/afs_vnop_create.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_dirops.o: $(TOP_SRC_VNOPS)/afs_vnop_dirops.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_fid.o: $(TOP_SRC_VNOPS)/afs_vnop_fid.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_flock.o: $(TOP_SRC_VNOPS)/afs_vnop_flock.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_link.o: $(TOP_SRC_VNOPS)/afs_vnop_link.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_lookup.o: $(TOP_SRC_VNOPS)/afs_vnop_lookup.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_open.o: $(TOP_SRC_VNOPS)/afs_vnop_open.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_read.o: $(TOP_SRC_VNOPS)/afs_vnop_read.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_readdir.o: $(TOP_SRC_VNOPS)/afs_vnop_readdir.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_remove.o: $(TOP_SRC_VNOPS)/afs_vnop_remove.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_rename.o: $(TOP_SRC_VNOPS)/afs_vnop_rename.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_strategy.o: $(TOP_SRC_VNOPS)/afs_vnop_strategy.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_symlink.o: $(TOP_SRC_VNOPS)/afs_vnop_symlink.c
$(CRULEPIC)
$(PICOBJ)/afs_vnop_write.o: $(TOP_SRC_VNOPS)/afs_vnop_write.c
$(CRULEPIC)
$(PICOBJ)/afs_volume.o: $(TOP_SRC_AFS)/afs_volume.c
$(CRULEPIC)
$(PICOBJ)/rx_rdwr.o: $(TOP_SRC_RX)/rx_rdwr.c
$(CRULEPIC)
$(PICOBJ)/afs_cbqueue.o: $(TOP_SRC_AFS)/afs_cbqueue.c
$(CRULEPIC)
$(PICOBJ)/afs_callback.o: $(TOP_SRC_AFS)/afs_callback.c
$(CRULEPIC)
$(PICOBJ)/afs_chunk.o: $(TOP_SRC_AFS)/afs_chunk.c
$(CRULEPIC)
$(PICOBJ)/afs_daemons.o: $(TOP_SRC_AFS)/afs_daemons.c
$(CRULEPIC)
$(PICOBJ)/afs_dir.o: $(TOP_SRCDIR)/dir/dir.c
$(CRULEPIC) -o afs_dir.o
$(PICOBJ)/AFS_component_version_number.o: AFS_component_version_number.c
$(CRULEPIC)
$(PICOBJ)/afs_lock.o: $(TOP_SRC_AFS)/afs_lock.c
$(CRULEPIC)
$(PICOBJ)/afs_memcache.o: $(TOP_SRC_AFS)/afs_memcache.c
$(CRULEPIC)
$(PICOBJ)/afs_fetchstore.o: $(TOP_SRC_AFS)/afs_fetchstore.c
$(CRULEPIC)
$(PICOBJ)/afs_stat.o: $(TOP_SRC_AFS)/afs_stat.c
$(CRULEPIC)
$(PICOBJ)/fcrypt.o: $(TOP_SRC_RXKAD)/fcrypt.c
$(CRULEPIC)
$(PICOBJ)/crypt_conn.o: $(TOP_SRC_RXKAD)/crypt_conn.c
$(CRULEPIC)
$(PICOBJ)/rxkad_client.o: $(TOP_SRC_RXKAD)/rxkad_client.c
$(CRULEPIC)
$(PICOBJ)/rxkad_common.o: $(TOP_SRC_RXKAD)/rxkad_common.c
$(CRULEPIC)
$(PICOBJ)/afs_exporter.o: $(TOP_SRCDIR)/afs/afs_exporter.c
$(CRULEPIC)
$(PICOBJ)/afs_nfsclnt.o: $(TOP_SRC_AFS)/afs_nfsclnt.c
$(CRULEPIC)
$(PICOBJ)/afs_nfsdisp.o: $(TOP_SRC_AFS)/afs_nfsdisp.c
$(CRULEPIC)
$(PICOBJ)/rx.o: $(TOP_SRC_RX)/rx.c
$(CRULEPIC)
$(PICOBJ)/rx_clock.o: $(TOP_SRC_RX)/rx_clock.c
$(CRULEPIC)
$(PICOBJ)/rx_event.o: $(TOP_SRC_RX)/rx_event.c
$(CRULEPIC)
$(PICOBJ)/rx_globals.o: $(TOP_SRC_RX)/rx_globals.c
$(CRULEPIC)
$(PICOBJ)/rx_identity.o: $(TOP_SRC_RX)/rx_identity.c
$(CRULEPIC)
$(PICOBJ)/rx_misc.o: $(TOP_SRC_RX)/rx_misc.c
$(CRULEPIC)
$(PICOBJ)/rx_multi.o: $(TOP_SRC_RX)/rx_multi.c
$(CRULEPIC)
$(PICOBJ)/rx_null.o: $(TOP_SRC_RX)/rx_null.c
$(CRULEPIC)
$(PICOBJ)/rx_opaque.o: $(TOP_SRC_RX)/rx_opaque.c
$(CRULEPIC)
$(PICOBJ)/rx_getaddr.o: $(TOP_SRC_RX)/rx_getaddr.c
$(CRULEPIC)
$(PICOBJ)/rx_stats.o: $(TOP_SRC_RX)/rx_stats.c
$(CRULEPIC)
$(PICOBJ)/rx_packet.o: $(TOP_SRC_RX)/rx_packet.c
$(CRULEPIC)
$(PICOBJ)/rx_conncache.o: $(TOP_SRCDIR)/rx/rx_conncache.c
$(CRULEPIC)
$(PICOBJ)/xdr_rx.o: $(TOP_SRC_RX)/xdr_rx.c
$(CRULEPIC)
$(PICOBJ)/xdr_int32.o: $(TOP_SRC_RX)/xdr_int32.c
$(CRULEPIC)
$(PICOBJ)/xdr_int64.o: $(TOP_SRC_RX)/xdr_int64.c
$(CRULEPIC)
$(PICOBJ)/afs_usrops.o: $(TOP_SRC_AFS)/UKERNEL/afs_usrops.c
$(CRULEPIC)
$(PICOBJ)/afsd.o: $(TOP_SRCDIR)/afsd/afsd.c
$(CRULEPIC) @CFLAGS_NOERROR@
$(PICOBJ)/afsd_uafs.o: $(TOP_SRC_AFS)/UKERNEL/afsd_uafs.c
$(CRULEPIC)
$(PICOBJ)/afs_uuid.o: $(TOP_SRCDIR)/util/uuid.c
$(CRULEPIC) -o afs_uuid.o
$(PICOBJ)/assert.o: $(TOP_SRCDIR)/util/assert.c
$(CRULEPIC)
$(PICOBJ)/xdr_afsuuid.o: $(TOP_SRCDIR)/rx/xdr_afsuuid.c
$(CRULEPIC)
$(PICOBJ)/xdr.o: $(TOP_SRCDIR)/rx/xdr.c
$(CRULEPIC)
$(PICOBJ)/osi_vnodeops.o: $(TOP_SRC_AFS)/UKERNEL/osi_vnodeops.c
$(CRULEPIC)
$(PICOBJ)/osi_vm.o: $(TOP_SRC_AFS)/UKERNEL/osi_vm.c
$(CRULEPIC)
$(PICOBJ)/osi_groups.o: $(TOP_SRC_AFS)/UKERNEL/osi_groups.c
$(CRULEPIC)
$(PICOBJ)/osi_gcpags.o: $(TOP_SRC_AFS)/UKERNEL/osi_gcpags.c
$(CRULEPIC)
$(PICOBJ)/osi_vcache.o: $(TOP_SRC_AFS)/UKERNEL/osi_vcache.c
$(CRULEPIC)
$(PICOBJ)/Kcallback.ss.o: $(TOP_OBJ_FSINT)/Kcallback.ss.c
$(CRULEPIC)
$(PICOBJ)/Kvice.xdr.o: $(TOP_OBJ_FSINT)/Kvice.xdr.c
$(CRULEPIC)
$(PICOBJ)/Kvice.cs.o: $(TOP_OBJ_FSINT)/Kvice.cs.c
$(CRULEPIC)
$(PICOBJ)/afsaux.o: $(TOP_SRC_FSINT)/afsaux.c
$(CRULEPIC)
$(PICOBJ)/xdr_arrayn.o: $(TOP_SRC_RX)/xdr_arrayn.c
$(CRULEPIC)
$(PICOBJ)/Kvldbint.cs.o: $(TOP_OBJ_VLSERVER)/Kvldbint.cs.c
$(CRULEPIC)
$(PICOBJ)/Kvldbint.xdr.o: $(TOP_OBJ_VLSERVER)/Kvldbint.xdr.c
$(CRULEPIC)
$(PICOBJ)/rx_kmutex.o: $(TOP_SRC_RX)/UKERNEL/rx_kmutex.c
$(CRULEPIC)
$(PICOBJ)/rx_knet.o: $(TOP_SRC_RX)/UKERNEL/rx_knet.c
$(CRULEPIC)
$(PICOBJ)/rx_kcommon.o: $(TOP_SRCDIR)/rx/rx_kcommon.c
$(CRULEPIC)
$(PICOBJ)/afs_call.o: $(TOP_SRC_AFS)/afs_call.c
$(CRULEPIC) -DAFS_NONFSTRANS
$(PICOBJ)/afs_icl.o: $(TOP_SRC_AFS)/afs_icl.c
$(CRULEPIC) -DAFS_NONFSTRANS
$(PICOBJ)/afs_pioctl.o: $(TOP_SRC_AFS)/afs_pioctl.c
$(CRULEPIC) -DAFS_NONFSTRANS
$(PICOBJ)/afs_syscall.o: $(TOP_SRC_AFS)/afs_syscall.c
$(CRULEPIC) @CFLAGS_NOERROR@ -DAFS_NONFSTRANS
$(PICOBJ)/osi_vfsops.o: $(TOP_SRC_AFS)/UKERNEL/osi_vfsops.c
$(CRULEPIC) -DAFS_NONFSTRANS
$(PICOBJ)/ktc.o: $(TOP_SRCDIR)/auth/ktc.c
$(CRULEPIC) @CFLAGS_NOERROR@
$(PICOBJ)/ticket.o: $(TOP_SRCDIR)/rxkad/ticket.c
$(CRULEPIC)
$(PICOBJ)/rxkad_server.o: $(TOP_SRCDIR)/rxkad/rxkad_server.c
$(CRULEPIC)
$(PICOBJ)/ptint.cs.o: $(TOP_OBJDIR)/src/ptserver/ptint.cs.c
$(CRULEPIC)
$(PICOBJ)/ptint.xdr.o: $(TOP_OBJDIR)/src/ptserver/ptint.xdr.c
$(CRULEPIC)
$(PICOBJ)/ptuser.o: $(TOP_SRCDIR)/ptserver/ptuser.c
$(CRULEPIC)
$(PICOBJ)/pterror.o: $(TOP_OBJDIR)/src/ptserver/pterror.c
$(CRULEPIC)
$(PICOBJ)/ubikclient.o: $(TOP_SRCDIR)/ubik/ubikclient.c
$(CRULEPIC)
$(PICOBJ)/ubik_int.cs.o: $(TOP_OBJDIR)/src/ubik/ubik_int.cs.c
$(CRULEPIC)
$(PICOBJ)/ubik_int.xdr.o: $(TOP_OBJDIR)/src/ubik/ubik_int.xdr.c
$(CRULEPIC)
$(PICOBJ)/authclient.o: $(TOP_SRCDIR)/kauth/authclient.c
$(CRULEPIC)
$(PICOBJ)/kalocalcell.o: $(TOP_SRCDIR)/kauth/kalocalcell.c
$(CRULEPIC)
$(PICOBJ)/client.o: $(TOP_SRCDIR)/kauth/client.c
$(CRULEPIC)
$(PICOBJ)/user.o: $(TOP_SRCDIR)/kauth/user.c
$(CRULEPIC)
$(PICOBJ)/hostparse.o: $(TOP_SRCDIR)/util/hostparse.c
$(CRULEPIC)
$(PICOBJ)/katoken.o: $(TOP_SRCDIR)/kauth/katoken.c
$(CRULEPIC)
$(PICOBJ)/acfg_errors.o: $(TOP_OBJDIR)/src/auth/acfg_errors.c
$(CRULEPIC)
$(PICOBJ)/kaaux.o: $(TOP_SRCDIR)/kauth/kaaux.c
$(CRULEPIC)
$(PICOBJ)/authcon.o: $(TOP_SRCDIR)/auth/authcon.c
$(CRULEPIC)
$(PICOBJ)/cellconfig.o: $(TOP_SRCDIR)/auth/cellconfig.c
$(CRULEPIC)
$(PICOBJ)/keys.o: $(TOP_SRCDIR)/auth/keys.c
$(CRULEPIC)
$(PICOBJ)/casestrcpy.o: $(TOP_SRCDIR)/util/casestrcpy.c
$(CRULEPIC)
$(PICOBJ)/dirpath.o: $(TOP_SRCDIR)/util/dirpath.c
$(CRULEPIC)
$(PICOBJ)/fileutil.o: $(TOP_SRCDIR)/util/fileutil.c
$(CRULEPIC)
$(PICOBJ)/netutils.o: $(TOP_SRCDIR)/util/netutils.c
$(CRULEPIC)
$(PICOBJ)/et_name.o: $(TOP_SRCDIR)/comerr/et_name.c
$(CRULEPIC)
$(PICOBJ)/com_err.o: $(TOP_SRCDIR)/comerr/com_err.c
$(CRULEPIC)
$(PICOBJ)/error_msg.o: $(TOP_SRCDIR)/comerr/error_msg.c
$(CRULEPIC)
$(PICOBJ)/uerrors.o: $(TOP_OBJDIR)/src/ubik/uerrors.c
$(CRULEPIC)
$(PICOBJ)/kaerrors.o: $(TOP_OBJDIR)/src/kauth/kaerrors.c
$(CRULEPIC)
$(PICOBJ)/ktc_errors.o: $(TOP_OBJDIR)/src/auth/ktc_errors.c
$(CRULEPIC)
$(PICOBJ)/rxkad_errs.o: $(TOP_OBJDIR)/src/rxkad/rxkad_errs.c
$(CRULEPIC)
$(PICOBJ)/kauth.cs.o: $(TOP_OBJDIR)/src/kauth/kauth.cs.c
$(CRULEPIC)
$(PICOBJ)/kauth.xdr.o: $(TOP_OBJDIR)/src/kauth/kauth.xdr.c
$(CRULEPIC)
$(PICOBJ)/rxstat.o: $(TOP_SRC_RXSTAT)/rxstat.c
$(CRULEPIC)
$(PICOBJ)/Krxstat.ss.o: $(TOP_OBJ_RXSTAT)/Krxstat.ss.c
$(CRULEPIC)
$(PICOBJ)/Krxstat.xdr.o: $(TOP_OBJ_RXSTAT)/Krxstat.xdr.c
$(CRULEPIC)
$(PICOBJ)/token.xdr.o: $(TOP_OBJ_AUTH)/token.xdr.c
$(CRULEPIC)
$(PICOBJ)/token.o: $(TOP_SRCDIR)/auth/token.c
$(CRULEPIC)
$(PICOBJ)/xdr_mem.o: $(TOP_SRC_RX)/xdr_mem.c
$(CRULEPIC)
$(PICOBJ)/xdr_len.o: $(TOP_SRC_RX)/xdr_len.c
$(CRULEPIC)
# These files are for the netscape plugin
$(WEBOBJ)/afs_atomlist.o: $(TOP_SRCDIR)/util/afs_atomlist.c
@ -1530,17 +1975,18 @@ clean:
-$(RM) -f h net netinet rpc ufs machine inet nfs sys linktest $(AFS_OS_CLEAN)
install: UAFS/$(LIBUAFS) JUAFS/$(LIBJUAFS)
install: UAFS/$(LIBUAFS) JUAFS/$(LIBJUAFS) UAFS.pic/libuafs_pic.a
${INSTALL} -d ${DESTDIR}${libdir}
${INSTALL_DATA} UAFS/$(LIBUAFS) ${DESTDIR}${libdir}/$(LIBUAFS)
${INSTALL_DATA} JUAFS/$(LIBJUAFS) ${DESTDIR}${libdir}/$(LIBJUAFS)
${INSTALL_DATA} UAFS.pic/libuafs_pic.a ${DESTDIR}${libdir}/libuafs_pic.a
dest: $(TOP_INCDIR)/afs/param.h $(TOP_INCDIR)/afs/stds.h \
$(TOP_INCDIR)/afs/afs_sysnames.h \
$(TOP_INCDIR)/afs/afs_stats.h \
$(TOP_SRCDIR)/afs/sysincludes.h \
$(TOP_SRCDIR)/afs/UKERNEL/afs_usrops.h \
UAFS/$(LIBUAFS) JUAFS/$(LIBJUAFS)
UAFS/$(LIBUAFS) JUAFS/$(LIBJUAFS) UAFS.pic/libuafs_pic.a
${INSTALL} -d ${DEST}/root.perf/include/afs
${INSTALL} -d ${DEST}/root.perf/lib
${INSTALL_DATA} $(TOP_INCDIR)/afs/param.h \
@ -1557,6 +2003,7 @@ dest: $(TOP_INCDIR)/afs/param.h $(TOP_INCDIR)/afs/stds.h \
${DEST}/root.perf/include/afs/afs_usrops.h
${INSTALL_DATA} UAFS/$(LIBUAFS) ${DEST}/root.perf/lib/$(LIBUAFS)
${INSTALL_DATA} JUAFS/$(LIBJUAFS) ${DEST}/root.perf/lib/$(LIBJUAFS)
${INSTALL_DATA} UAFS.pic/libuafs_pic.a ${DEST}/root.perf/lib/libuafs_pic.a
#
# Common directory and other build targets
@ -1564,6 +2011,9 @@ dest: $(TOP_INCDIR)/afs/param.h $(TOP_INCDIR)/afs/stds.h \
UAFS:
mkdir -p $@
UAFS.pic:
mkdir -p $@
JUAFS:
mkdir -p $@
@ -1588,6 +2038,11 @@ setup_uafs: UAFS setup_common
ln -s ../Makefile UAFS/Makefile
ln -s ../Makefile.common UAFS/Makefile.common
setup_picuafs: UAFS.pic setup_common
-$(RM) -f UAFS.pic/Makefile UAFS.pic/Makefile.common
ln -s ../Makefile UAFS.pic/Makefile
ln -s ../Makefile.common UAFS.pic/Makefile.common
setup_juafs: JUAFS setup_common
-$(RM) -f JUAFS/Makefile JUAFS/Makefile.common
ln -s ../Makefile JUAFS/Makefile
@ -1603,6 +2058,11 @@ UAFS/$(LIBUAFS): setup_uafs
$(MAKE) $(LIBUAFS) DESTDIR=${DESTDIR} LIBJUAFS_FLAGS=&& \
$(RANLIB) $(LIBUAFS)
UAFS.pic/libuafs_pic.a: setup_picuafs
cd UAFS.pic && \
$(MAKE) libuafs_pic.a DESTDIR=${DESTDIR} LIBJUAFS_FLAGS=&& \
$(RANLIB) libuafs_pic.a
JUAFS/$(LIBJUAFS): setup_juafs
cd JUAFS && \
$(MAKE) $(LIBJUAFS) DESTDIR=${DESTDIR} LIBJUAFS_FLAGS=-DAFS_WEB_ENHANCEMENTS && \

View File

@ -51,6 +51,11 @@ $(LIBUAFS): $(UAFSOBJ)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ) $(AFS)/afsl.exp
$(RANLIB) libuafs.a
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ) $(AFS)/afsl.exp
$(RANLIB) libuafs_pic.a
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ) $(AFS)/afsl.exp

View File

@ -35,6 +35,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -36,6 +36,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -36,6 +36,11 @@ $(LIBUAFS): $(UAFSOBJ)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
ranlib $(LIBUAFS)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
ranlib libuafs_pic.a
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -40,6 +40,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -43,6 +43,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -34,6 +34,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -46,6 +46,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -35,6 +35,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -35,6 +35,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -33,6 +33,10 @@ $(LIBUAFS): $(UAFSOBJ)
-$(RM) -f $(LIBUAFS)
$(AR) $(ARFLAGS) $(LIBUAFS) $(UAFSOBJ)
libuafs_pic.a: $(PICUAFSOBJ)
-$(RM) -f libuafs_pic.a
$(AR) $(ARFLAGS) libuafs_pic.a $(PICUAFSOBJ)
$(LIBJUAFS): $(JUAFSOBJ)
-$(RM) -f $(LIBJUAFS)
$(AR) $(ARFLAGS) $(LIBJUAFS) $(JUAFSOBJ)

View File

@ -23,6 +23,33 @@ objects = assert.o base64.o casestrcpy.o config_file.o ktime.o volparse.o \
afs_atomlist.o afs_lhash.o snprintf.o pthread_glock.o \
tabular_output.o ${REGEX_OBJ}
objects_pic = \
pic_assert.o \
pic_base64.o \
pic_casestrcpy.o \
pic_config_file.o \
pic_ktime.o \
pic_volparse.o \
pic_hostparse.o \
pic_exec.o \
pic_hputil.o \
pic_kreltime.o \
pic_isathing.o \
pic_get_krbrlm.o \
pic_uuid.o \
pic_serverLog.o \
pic_dirpath.o \
pic_fileutil.o \
pic_netutils.o \
pic_flipbase64.o \
pic_fstab.o \
pic_afs_atomlist.o \
pic_afs_lhash.o \
pic_snprintf.o \
pic_pthread_glock.o \
pic_tabular_output.o \
${REGEX_OBJ_PIC}
includes = \
${TOP_INCDIR}/afs/dirpath.h \
${TOP_INCDIR}/afs/pthread_nosigs.h \
@ -50,6 +77,7 @@ includes = \
all: ${includes} \
${TOP_LIBDIR}/util.a \
${TOP_LIBDIR}/libafsutil.a \
${TOP_LIBDIR}/libafsutil_pic.a \
sys
buildtools: ${TOP_LIBDIR}/libafsutil.a ${TOP_INCDIR}/afs/afsutil.h
@ -132,6 +160,9 @@ ${TOP_LIBDIR}/util.a: util.a
${TOP_LIBDIR}/libafsutil.a: util.a
${INSTALL_DATA} $? $@
${TOP_LIBDIR}/libafsutil_pic.a: util_pic.a
${INSTALL_DATA} $? $@
# Use " as the sed boundary character because we lose anyway if that occurs
# in path names.
dirpath.h: ${srcdir}/dirpath.hin Makefile
@ -157,11 +188,20 @@ util.a: ${objects} AFS_component_version_number.o
$(AR) crv util.a ${objects} AFS_component_version_number.o
$(RANLIB) util.a
util_pic.a: ${objects_pic} AFS_component_version_number_pic.o
$(RM) -f util_pic.a
$(AR) crv util_pic.a ${objects_pic} AFS_component_version_number_pic.o
$(RANLIB) util_pic.a
pthread_glock.o: ${srcdir}/pthread_glock.c ${includes}
${MT_CC} $(COMMON_CFLAGS) ${MT_CFLAGS} -c ${srcdir}/pthread_glock.c
${objects}: ${includes}
CFLAGS_AFS_component_version_number_pic.o = -fPIC
AFS_component_version_number_pic.o: AFS_component_version_number.c
$(AFS_CCRULE) AFS_component_version_number.c
config_file.o: ${TOP_SRCDIR}/external/heimdal/krb5/config_file.c krb5_locl.h
$(AFS_CCRULE) -c ${TOP_SRCDIR}/external/heimdal/krb5/config_file.c
@ -170,13 +210,115 @@ sys.o: sys.c AFS_component_version_number.c ${includes}
sys: sys.o
$(AFS_LDRULE) sys.o
# PIC objects build rules
PICFLAGS = -fPIC
CFLAGS_assert.o = $(PICFLAGS)
pic_assert.o: ${srcdir}/assert.c ${includes}
$(AFS_CCRULE) ${srcdir}/assert.c
CFLAGS_base64.o = $(PICFLAGS)
pic_base64.o: ${srcdir}/base64.c ${includes}
$(AFS_CCRULE) ${srcdir}/base64.c
CFLAGS_casestrcpy.o = $(PICFLAGS)
pic_casestrcpy.o: ${srcdir}/casestrcpy.c ${includes}
$(AFS_CCRULE) ${srcdir}/casestrcpy.c
CFLAGS_config_file.o = $(PICFLAGS)
pic_config_file.o: ${TOP_SRCDIR}/external/heimdal/krb5/config_file.c krb5_locl.h
$(AFS_CCRULE) ${TOP_SRCDIR}/external/heimdal/krb5/config_file.c
CFLAGS_ktime.o = $(PICFLAGS)
pic_ktime.o: ${srcdir}/ktime.c ${includes}
$(AFS_CCRULE) ${srcdir}/ktime.c
CFLAGS_volparse.o = $(PICFLAGS)
pic_volparse.o: ${srcdir}/volparse.c ${includes}
$(AFS_CCRULE) ${srcdir}/volparse.c
CFLAGS_hostparse.o = $(PICFLAGS)
pic_hostparse.o: ${srcdir}/hostparse.c ${includes}
$(AFS_CCRULE) ${srcdir}/hostparse.c
CFLAGS_exec.o = $(PICFLAGS)
pic_exec.o: ${srcdir}/exec.c ${includes}
$(AFS_CCRULE) ${srcdir}/exec.c
CFLAGS_hputil.o = $(PICFLAGS)
pic_hputil.o: ${srcdir}/hputil.c ${includes}
$(AFS_CCRULE) ${srcdir}/hputil.c
CFLAGS_kreltime.o = $(PICFLAGS)
pic_kreltime.o: ${srcdir}/kreltime.c ${includes}
$(AFS_CCRULE) ${srcdir}/kreltime.c
CFLAGS_isathing.o = $(PICFLAGS)
pic_isathing.o: ${srcdir}/isathing.c ${includes}
$(AFS_CCRULE) ${srcdir}/isathing.c
CFLAGS_get_krbrlm.o = $(PICFLAGS)
pic_get_krbrlm.o: ${srcdir}/get_krbrlm.c ${includes}
$(AFS_CCRULE) ${srcdir}/get_krbrlm.c
CFLAGS_uuid.o = $(PICFLAGS)
pic_uuid.o: ${srcdir}/uuid.c ${includes}
$(AFS_CCRULE) ${srcdir}/uuid.c
CFLAGS_serverLog.o = $(PICFLAGS)
pic_serverLog.o: ${srcdir}/serverLog.c ${includes}
$(AFS_CCRULE) ${srcdir}/serverLog.c
CFLAGS_dirpath.o = $(PICFLAGS)
pic_dirpath.o: ${srcdir}/dirpath.c ${includes}
$(AFS_CCRULE) ${srcdir}/dirpath.c
CFLAGS_fileutil.o = $(PICFLAGS)
pic_fileutil.o: ${srcdir}/fileutil.c ${includes}
$(AFS_CCRULE) ${srcdir}/fileutil.c
CFLAGS_netutils.o = $(PICFLAGS)
pic_netutils.o: ${srcdir}/netutils.c ${includes}
$(AFS_CCRULE) ${srcdir}/netutils.c
CFLAGS_flipbase64.o = $(PICFLAGS)
pic_flipbase64.o: ${srcdir}/flipbase64.c ${includes}
$(AFS_CCRULE) ${srcdir}/flipbase64.c
CFLAGS_fstab.o = $(PICFLAGS)
pic_fstab.o: ${srcdir}/fstab.c ${includes}
$(AFS_CCRULE) ${srcdir}/fstab.c
CFLAGS_afs_atomlist.o = $(PICFLAGS)
pic_afs_atomlist.o: ${srcdir}/afs_atomlist.c ${includes}
$(AFS_CCRULE) ${srcdir}/afs_atomlist.c
CFLAGS_afs_lhash.o = $(PICFLAGS)
pic_afs_lhash.o: ${srcdir}/afs_lhash.c ${includes}
$(AFS_CCRULE) ${srcdir}/afs_lhash.c
CFLAGS_snprintf.o = $(PICFLAGS)
pic_snprintf.o: ${srcdir}/snprintf.c ${includes}
$(AFS_CCRULE) ${srcdir}/snprintf.c
CFLAGS_pthread_glock.o = $(PICFLAGS)
pic_pthread_glock.o: ${srcdir}/pthread_glock.c ${includes}
$(AFS_CCRULE) ${srcdir}/pthread_glock.c
CFLAGS_tabular_output.o = $(PICFLAGS)
pic_tabular_output.o: ${srcdir}/tabular_output.c ${includes}
$(AFS_CCRULE) ${srcdir}/tabular_output.c
CFLAGS_regex.o = $(PICFLAGS)
pic_regex.o: ${srcdir}/regex.c ${includes}
$(AFS_CCRULE) ${srcdir}/regex.c
#
# Install targets
#
KDIR=../libafs/afs
UKDIR=../libuafs/afs
install: dirpath.h util.a sys
install: dirpath.h util.a util_pic.a sys
${INSTALL} -d ${DESTDIR}${includedir}/afs
${INSTALL} -d ${DESTDIR}${libdir}/afs
${INSTALL} -d ${DESTDIR}${bindir}
@ -203,9 +345,10 @@ install: dirpath.h util.a sys
${INSTALL_DATA} ${srcdir}/tabular_output.h ${DESTDIR}${includedir}/afs/tabular_output.h
${INSTALL_DATA} util.a ${DESTDIR}${libdir}/afs/util.a
${INSTALL_DATA} util.a ${DESTDIR}${libdir}/afs/libafsutil.a
${INSTALL_DATA} util_pic.a ${DESTDIR}${libdir}/afs/libafsutil_pic.a
${INSTALL_PROGRAM} sys ${DESTDIR}${bindir}/sys
dest: dirpath.h util.a sys
dest: dirpath.h util.a util_pic.a sys
${INSTALL} -d ${DEST}/include/afs
${INSTALL} -d ${DEST}/lib/afs
${INSTALL} -d ${DEST}/bin
@ -232,6 +375,7 @@ dest: dirpath.h util.a sys
${INSTALL_DATA} ${srcdir}/tabular_output.h ${DEST}/include/afs/tabular_output.h
${INSTALL_DATA} util.a ${DEST}/lib/afs/util.a
${INSTALL_DATA} util.a ${DEST}/lib/afs/libafsutil.a
${INSTALL_DATA} util_pic.a ${DEST}/lib/afs/libafsutil_pic.a
${INSTALL_PROGRAM} sys ${DEST}/bin/sys
#
@ -240,7 +384,7 @@ dest: dirpath.h util.a sys
clean:
$(RM) -f ${objects} sys dirpath.h
$(RM) -f util.a *.o core AFS_component_version_number.c
$(RM) -f util.a util_pic.a *.o core AFS_component_version_number.c
test:
cd test; $(MAKE)