fsint: Move to using libtool
authorSimon Wilkinson <sxw@your-file-system.com>
Wed, 22 Aug 2012 08:39:59 +0000 (09:39 +0100)
committerDerrick Brashear <shadow@your-file-system.com>
Sun, 9 Sep 2012 19:45:12 +0000 (12:45 -0700)
Move the fsint directory over to building a libtool library
(liboafs_fsint). Because libtool requires that libraries have no
unresolved dependencies, we cannot include the server side stubs in
the libtool library.

Change-Id: Ia3f009680ac510f522b806366985e557cd6e4219
Reviewed-on: http://gerrit.openafs.org/8070
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

src/dviced/Makefile.in
src/fsint/Makefile.in
src/fsint/liboafs_fsint.la.sym [new file with mode: 0644]
src/viced/Makefile.in

index 367ad3b..2f7ec20 100644 (file)
@@ -21,7 +21,6 @@ VLSERVER=$(srcdir)/../vlserver
 LIBACL=$(srcdir)/../libacl
 DIR=$(srcdir)/../dir
 VOL=$(srcdir)/../vol
-FSINT=$(srcdir)/../fsint
 
 VICEDOBJS=viced.o afsfileprocs.o host.o physio.o callback.o serialize_state.o \
          fsstats.o
@@ -36,7 +35,7 @@ VOLOBJS= vnode.o volume.o vutil.o partition.o fssync-server.o \
         clone.o devname.o common.o ihandle.o listinodes.o namei_ops.o \
         salvsync-client.o daemon_com.o vg_cache.o vg_scan.o
 
-FSINTOBJS= afsaux.o afscbint.cs.o afsint.ss.o afsint.xdr.o
+FSINTOBJS= afsint.ss.o
 
 RXOBJS = rx_pthread.o 
 
@@ -49,6 +48,7 @@ SDBGOBJS = state_analyzer.o \
 
 LIBS=${TOP_LIBDIR}/libafsauthent.a \
      ${TOP_LIBDIR}/libafsrpc.a \
+     $(top_builddir)/src/fsint/liboafs_fsint.la \
      $(top_builddir)/src/lwp/liboafs_lwpcompat.la \
      $(top_builddir)/src/cmd/liboafs_cmd.la \
      $(top_builddir)/src/opr/liboafs_opr.la \
@@ -154,24 +154,9 @@ ihandle.o: ${VOL}/ihandle.c
 namei_ops.o: ${VOL}/namei_ops.c
        $(AFS_CCRULE) $(VOL)/namei_ops.c
 
-afsaux.o: ${FSINT}/afsaux.c
-       $(AFS_CCRULE) -I../fsint $(FSINT)/afsaux.c
-
-afscbint.cs.o: ../fsint/afscbint.cs.c
-       $(AFS_CCRULE) ../fsint/afscbint.cs.c
-
-afscbint.ss.o: ../fsint/afscbint.ss.c
-       $(AFS_CCRULE) ../fsint/afscbint.ss.c
-
-afsint.cs.o: ../fsint/afsint.cs.c
-       $(AFS_CCRULE) ../fsint/afsint.cs.c
-
 afsint.ss.o: ../fsint/afsint.ss.c
        $(AFS_CCRULE) ../fsint/afsint.ss.c
 
-afsint.xdr.o: ../fsint/afsint.xdr.c
-       $(AFS_CCRULE) ../fsint/afsint.xdr.c
-
 state_analyzer.o: ${VICED}/state_analyzer.c
        $(AFS_CCRULE) $(VICED)/state_analyzer.c
 
index 5774247..2719cbb 100644 (file)
@@ -7,13 +7,29 @@
 
 srcdir=@srcdir@
 include @TOP_OBJDIR@/src/config/Makefile.config
+include @TOP_OBJDIR@/src/config/Makefile.libtool
 include @TOP_OBJDIR@/src/config/Makefile.lwp
 
+LT_objs = \
+       afsaux.lo \
+       afscbint.cs.lo \
+       afsint.cs.lo \
+       afsint.xdr.lo
 
-OBJS=afsaux.o afscbint.cs.o afscbint.ss.o afscbint.xdr.o afsint.cs.o afsint.ss.o afsint.xdr.o
+LT_deps = \
+       $(top_builddir)/src/rx/liboafs_rx.la
 
 all: \
-       ${TOP_LIBDIR}/libafsint.a depinstall
+       depinstall \
+       generated \
+       ${TOP_LIBDIR}/libafsint.a \
+       liboafs_fsint.la
+
+liboafs_fsint.la: liboafs_fsint.la.sym $(LT_objs) $(LT_deps)
+       $(LT_LDLIB_shlib) $(LT_objs) $(LT_deps) $(LT_libs)
+
+libafsint.a: $(LT_objs) afsint.ss.lo afscbint.ss.lo
+       $(LT_LDLIB_lwp) $(LT_objs) afsint.ss.lo afscbint.ss.lo
 
 depinstall: \
        ${TOP_INCDIR}/afs/afsint.h \
@@ -32,7 +48,7 @@ generated: \
        afsint.cs.c afsint.ss.c afsint.xdr.c afsint.h
 
 ${TOP_LIBDIR}/libafsint.a: libafsint.a
-       ${INSTALL_DATA} $? $@
+       ${INSTALL_DATA} libafsint.a $@
 
 ${TOP_INCDIR}/afs/afsint.h: afsint.h
        ${INSTALL_DATA} $? $@
@@ -43,12 +59,7 @@ ${TOP_INCDIR}/afs/afscbint.h: afscbint.h
 ${TOP_INCDIR}/afs/pagcb.h: pagcb.h
        ${INSTALL_DATA} $? $@
 
-libafsint.a: ${OBJS} AFS_component_version_number.o
-       -$(RM) -f $@
-       $(AR) crv $@ ${OBJS} AFS_component_version_number.o
-       $(RANLIB) $@
-
-afsaux.o: afsaux.c afsint.h
+afsaux.lo: afsaux.c afsint.h
 
 Kcallback.cs.c: common.xg afscbint.xg Kvice.h Kcallback.h
        ${RXGEN} -A -x -k -C -o Kcallback.cs.c ${srcdir}/afscbint.xg
@@ -137,6 +148,7 @@ dest: libafsint.a afsint.h afscbint.h pagcb.h
 #
 
 clean:
+       $(LT_CLEAN)
        $(RM) -f *.o *.cs.c *.ss.c *.er.c *.a *.xdr.c core \
                afsint.h afscbint.h pagcb.h AFS_component_version_number.c   \
        Kvice.h Kcallback.h Kpagcb.h
diff --git a/src/fsint/liboafs_fsint.la.sym b/src/fsint/liboafs_fsint.la.sym
new file mode 100644 (file)
index 0000000..ddb0bb7
--- /dev/null
@@ -0,0 +1,55 @@
+EndRXAFSCB_CallBack
+EndRXAFSCB_ProbeUuid
+EndRXAFS_FetchData
+EndRXAFS_StoreData
+RXAFSCB_CallBack
+RXAFSCB_InitCallBackState
+RXAFSCB_InitCallBackState3
+RXAFSCB_Probe
+RXAFSCB_ProbeUuid
+RXAFSCB_TellMeAboutYourself
+RXAFSCB_WhoAreYou
+RXAFS_CreateFile
+RXAFS_FetchStatus
+RXAFS_GetTime
+RXAFS_GiveUpCallBacks
+RXAFS_MakeDir
+RXAFS_ReleaseLock
+RXAFS_RemoveDir
+RXAFS_RemoveFile
+RXAFS_SetLock
+RXAFS_StoreStatus
+RXAFS_Symlink
+StartRXAFSCB_CallBack
+StartRXAFSCB_ProbeUuid
+StartRXAFS_FetchData
+StartRXAFS_StoreData
+xdr_AFSBulkStats
+xdr_AFSCBFids
+xdr_AFSCB_CollData
+xdr_AFSCBs
+xdr_AFSCallBack
+xdr_AFSDBCacheEntry
+xdr_AFSDBCacheEntry64
+xdr_AFSDBLock
+xdr_AFSFetchStatus
+xdr_AFSFetchVolumeStatus
+xdr_AFSFid
+xdr_AFSOpaque
+xdr_AFSStoreStatus
+xdr_AFSStoreVolumeStatus
+xdr_AFSVolSync
+xdr_AFSVolumeInfo
+xdr_AFS_CollData
+xdr_Capabilities
+xdr_FsCmdInputs
+xdr_FsCmdOutputs
+xdr_IPAddrs
+xdr_ViceIds
+xdr_ViceLockType
+xdr_ViceStatistics
+xdr_ViceStatistics64
+xdr_VolumeInfo
+xdr_cacheConfig
+xdr_interfaceAddr
+xdr_serverList
index 5dad5a3..ecbe87d 100644 (file)
@@ -19,7 +19,6 @@ VLSERVER=$(srcdir)/../vlserver
 LIBACL=$(srcdir)/../libacl
 DIR=$(srcdir)/../dir
 VOL=$(srcdir)/../vol
-FSINT=$(srcdir)/../fsint
 
 VICEDOBJS=viced.o afsfileprocs.o host.o physio.o callback.o serialize_state.o \
          fsstats.o
@@ -34,7 +33,7 @@ VOLOBJS= vnode.o volume.o vutil.o partition.o fssync-server.o \
         clone.o devname.o common.o ihandle.o listinodes.o namei_ops.o \
         salvsync-client.o daemon_com.o vg_cache.o vg_scan.o
 
-FSINTOBJS= afsaux.o afscbint.cs.o afsint.ss.o afsint.xdr.o
+FSINTOBJS = afsint.ss.o
 
 RXOBJS = rx_pthread.o
 
@@ -43,6 +42,7 @@ objects= ${VICEDOBJS} ${VLSERVEROBJS} ${LIBACLOBJS} \
 
 LIBS=${TOP_LIBDIR}/libafsauthent.a \
      ${TOP_LIBDIR}/libafsrpc.a \
+     $(top_builddir)/src/fsint/liboafs_fsint.la \
      $(top_builddir)/src/cmd/liboafs_cmd.la \
      $(top_builddir)/src/opr/liboafs_opr.la \
      $(top_builddir)/src/util/liboafs_util.la
@@ -143,24 +143,9 @@ ihandle.o: ${VOL}/ihandle.c
 namei_ops.o: ${VOL}/namei_ops.c
        $(AFS_CCRULE) $(VOL)/namei_ops.c
 
-afsaux.o: ${FSINT}/afsaux.c
-       $(AFS_CCRULE) -I../fsint $(FSINT)/afsaux.c
-
-afscbint.cs.o: ../fsint/afscbint.cs.c
-       $(AFS_CCRULE) ../fsint/afscbint.cs.c
-
-afscbint.ss.o: ../fsint/afscbint.ss.c
-       $(AFS_CCRULE) ../fsint/afscbint.ss.c
-
-afsint.cs.o: ../fsint/afsint.cs.c
-       $(AFS_CCRULE) ../fsint/afsint.cs.c
-
 afsint.ss.o: ../fsint/afsint.ss.c
        $(AFS_CCRULE) ../fsint/afsint.ss.c
 
-afsint.xdr.o: ../fsint/afsint.xdr.c
-       $(AFS_CCRULE) ../fsint/afsint.xdr.c
-
 fileserver: ${objects} ${LIBS}
        $(LT_LDRULE_static) ${objects} \
                ${LIBS} $(LIB_hcrypto) $(LIB_roken) ${MT_LIBS} ${XLIBS}