Author: jonathan
Date: 2005-07-09 18:49:04 -0400 (Sat, 09 Jul 2005)
New Revision: 240
Added:
trunk/CVS_Readme.txt
trunk/Readme.txt
Removed:
trunk/daemon/CVS_Readme.txt
trunk/daemon/Readme.txt
Modified:
trunk/Makefile.in
trunk/daemon/Makefile.in
trunk/docs/Makefile.in
trunk/examples/Makefile.in
trunk/win32/flooder.dsp
trunk/win32/libsp.dsp
trunk/win32/libtsp.dsp
trunk/win32/r.dsp
trunk/win32/s.dsp
trunk/win32/spread.dsp
trunk/win32/sptmonitor.dsp
trunk/win32/tuser.dsp
trunk/win32_msvc_net/libspread.vcproj
trunk/win32_msvc_net/libtspread.vcproj
trunk/win32_msvc_net/spflooder.vcproj
trunk/win32_msvc_net/spread.vcproj
trunk/win32_msvc_net/sprecv.vcproj
trunk/win32_msvc_net/spsend.vcproj
trunk/win32_msvc_net/sptmonitor.vcproj
trunk/win32_msvc_net/sptuser.vcproj
Log:
Updated Makefiles, Windows project files and configure script
to support new directory structure.
Also update CVS_Readme.txt and Readme.txt files about new
structure.
Copied: trunk/CVS_Readme.txt (from rev 237, trunk/daemon/CVS_Readme.txt)
===================================================================
--- trunk/daemon/CVS_Readme.txt 2005-07-08 18:32:44 UTC (rev 237)
+++ trunk/CVS_Readme.txt 2005-07-09 22:49:04 UTC (rev 240)
@@ -0,0 +1,80 @@
+Documentation on using Spread from Subversion.
+----------------------------------------------
+The main development is done on the main trunk. (default)
+
+There may be release branches for older releases if needed.
+
+
+To checkout a copy
+
+svn checkout svn+ssh://svn.spread.org/services/spreadcvs/svn/spread/trunk spread
+
+You should now have a 'spread' directory which contains the subdirectories:
+
+ * spread/daemon with the Spread daemon and C library code.
+ * spread/examples with example C programs for a sample user and flooder program.
+ * spread/javalib with the Java library code.
+ * spread/javaapps with sample Java applications.
+ * spread/perl with the Perl library code.
+
+
+To Build from a clean SVN checkout
+----------------------------------
+You normally just need to run from the top level directory:
+
+./configure
+make -C daemon parser
+make
+su (if you use the standard /usr/local install target)
+make install
+
+The only extra is the "make -C daemon parser" line which is needed to build
+the lex/yacc files. They are not auto-generated by the make file
+because of the numerous buggy lex/yacc implementations out there.
+This way you can make sure you only generate the parsers from a
+machine with a good implementation.
+
+If you want to build in a separate directory so all of the
+generated binary objects and libraries are not in the
+source directory just create a new directory, for example:
+
+mkdir bin_linux
+
+and then enter that directory and run the top level configure.
+cd bin_linux
+../configure
+
+and continue the build as usual.
+
+If you change 'configure.in' or related files, you need to regenerate the
+configure script.
+
+From the spread/ directory,
+to rebuild the configure script you need to run:
+
+autoconf -I buildtools
+
+If you add new header defines you may also need to run
+autoheader -I buildtools
+
+
+To make a new release of Spread
+-------------------------------
+
+- Code Changes in release commit
+
+ x) Update the Java build files javaapps/build.xml
+ <property name="version" value="3.17.2"/>
+
+ Also update the spread version in SpreadConnection.java
+
+ x) Update Spread version number in daemon/spread_params.h
+ SP_MAJOR_VERSION, SP_MINOR_VERSION, SP_PATCH_VERSION
+
+ x) Update the SPREAD_VERSION define in sp.h
+
+ x) Update build date in spread.c and monitor.c initial Alarm prints.
+
+ x) After release source tar is built and parser is built. Make sure
+ lex.yy.c does not #include <unistd.h> without protecting it by
+ #ifndef ARCH_PC_WIN95 ... #endif
Modified: trunk/Makefile.in
===================================================================
--- trunk/Makefile.in 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/Makefile.in 2005-07-09 22:49:04 UTC (rev 240)
@@ -1,208 +1,22 @@
-.SUFFIXES: .lo .to .tlo
+SUBDIRS=daemon docs examples
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-bindir=@bindir@
-sbindir=@sbindir@
-libdir=@libdir@
-includedir=@includedir@
-mandir=@mandir@
-mansubdir=@mansubdir@
-sysconfdir=@sysconfdir@
-piddir=@piddir@
-srcdir=@srcdir@
-top_srcdir=@top_srcdir@
-buildtoolsdir=$(srcdir)/buildtools
+all: $(SUBDIRS)
+ for dir in $(SUBDIRS); do \
+ ( $(MAKE) -C $$dir); \
+ done
-DESTDIR=
-VPATH=@srcdir@
-SPREAD_PROGRAM=@sbindir@/spread
-SP_MAJOR_VERSION=@SP_MAJOR_VERSION@
-SP_MINOR_VERSION=@SP_MINOR_VERSION@
-SP_PATCH_VERSION=@SP_PATCH_VERSION@
-VERSION=@SP_MAJOR_VERSION@.@SP_MINOR_VERSION@.@SP_PATCH_VERSION@
-
-#Shared Library version -- Must be changed upon each release
-#Rules: major -- inc for incompatible change
-# : minor -- inc for bugfix or forward compatible change
-
-LIBVERSION=1.0
-
-PATHS=
-
-CC=@CC@
-LD=@LD@
-CFLAGS=@CFLAGS@
-CPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@
-LDFLAGS=@LDFLAGS@
-LIBS=@LIBS@
-THLDFLAGS=@THLDFLAGS@
-THLIBS=@THLIBS@
-AR=@AR@
-LEX=@LEX@
-SHCC=@SHCC@
-SHLD=@SHLD@
-SHCFLAGS=@SHCFLAGS@
-SHCPPFLAGS=@SHCPPFLAGS@ -I. -I$(srcdir)
-SHLDFLAGS=@SHLDFLAGS@
-SHLIBS=@SHLIBS@
-RANLIB=@RANLIB@
-INSTALL=@INSTALL@
-SOFTLINK=@LN_S@
-PERL=@PERL@
-ENT=@ENT@
-EXEEXT=@EXEEXT@
-
-TARGETS=spread$(EXEEXT) spuser$(EXEEXT) spflooder$(EXEEXT) spmonitor$(EXEEXT) sptuser${EXEEXT} @LIBSPSO@ @LIBTSPSO@
-
-LIBSP_OBJS= alarm.o events.o memory.o sp.o
-
-LIBSP_SHOBJS= alarm.lo events.lo memory.lo sp.lo
-
-LIBTSP_OBJS= alarm.to events.to memory.to sp.to
-
-LIBTSP_SHOBJS= alarm.tlo events.tlo memory.tlo sp.tlo
-
-SPREADOBJS= spread.o protocol.o session.o groups.o alarm.o events.o memory.o membership.o data_link.o network.o status.o log.o flow_control.o message.o lex.yy.o y.tab.o configuration.o skiplist.o acm.o acp-permit.o auth-null.o auth-ip.o
-
-MONITOR_OBJS= monitor.o alarm.o events.o memory.o data_link.o lex.yy.o y.tab.o configuration.o skiplist.o acm.o
-
-TMONITOR_OBJS= monitor.to alarm.to events.to memory.to data_link.to lex.yy.to y.tab.to configuration.to skiplist.to acm.to
-
-MANPAGES = docs/SP_connect.3.out docs/SP_disconnect.3.out docs/SP_equal_group_ids.3.out docs/SP_error.3.out docs/SP_join.3.out docs/SP_leave.3.out docs/SP_multicast.3.out docs/SP_multigroup_multicast.3.out docs/SP_multigroup_scat_multicast.3.out docs/SP_poll.3.out docs/SP_receive.3.out docs/SP_scat_multicast.3.out docs/SP_scat_receive.3.out docs/libsp.3.out docs/spread.1.out docs/spuser.1.out docs/sptuser.1.out docs/spmonitor.1.out docs/spflooder.1.out
-MANPAGES_IN = docs/SP_connect.3 docs/SP_disconnect.3 docs/SP_equal_group_ids.3 docs/SP_error.3 docs/SP_join.3 docs/SP_leave.3 docs/SP_multicast.3 docs/SP_multigroup_multicast.3 docs/SP_multigroup_scat_multicast.3 docs/SP_poll.3 docs/SP_receive.3 docs/SP_scat_multicast.3 docs/SP_scat_receive.3 docs/libsp.3 docs/spread.1 docs/spuser.1 docs/sptuser.1 docs/spmonitor.1 docs/spflooder.1
-MANTYPE = @MANTYPE@
-
-PATHSUBS = \
- -D/etc/spread.conf=$(sysconfdir)/spread.conf \
- -D/var/run/spread.pid=$(piddir)/spread.pid
-
-FIXPATHSCMD = $(PERL) $(buildtoolsdir)/fixpaths $(PATHSUBS)
-
-all: $(TARGETS) $(MANPAGES)
-
-$(SPREADOBJS): config.h
-$(MONITOR_OBJS): config.h
-$(TMONITOR_OBJS): config.h
-
-.c.o:
- $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
-
-.c.to:
- $(CC) $(CFLAGS) $(CPPFLAGS) -D_REENTRANT -c $< -o $*.to
-
-.c.lo:
- $(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) -c $< -o $*.lo
-
-.c.tlo:
- $(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) -D_REENTRANT -c $< -o $*.tlo
-
-parser:
- $(YACC) -d $(srcdir)/config_parse.y
- $(LEX) $(srcdir)/config_gram.l
-
-#Disabled now because of timestamp errors causing extra regeneration
-#To build parser run "make parser" after ./configure is run.
-#lex.yy.c: config_gram.l y.tab.c
-# $(LEX) config_gram.l
-
-#y.tab.c: config_parse.y
-# $(YACC) -d config_parse.y
-
-none:
- @echo "Skipping shared library creation."
-
-install-none:
- @echo "Skipping shared library installation."
-
-libspread.a: $(LIBSP_OBJS)
- $(AR) rv $@ $(LIBSP_OBJS)
- $(RANLIB) $@
-
-libspread.dylib: $(LIBSP_SHOBJS)
- $(SHLD) -o libspread.$(LIBVERSION).dylib $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS)
- $(SOFTLINK) -f libspread.$(LIBVERSION).dylib $@
-
-install-libspread.dylib: libspread.dylib
- $(INSTALL) -m 0755 libspread.$(LIBVERSION).dylib $(DESTDIR)$(libdir)/libspread.$(LIBVERSION).dylib
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libspread.$(LIBVERSION).dylib libspread.dylib)
-
-libspread.so: $(LIBSP_SHOBJS)
- $(SHLD) -o $@ $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS)
-
-install-libspread.so: libspread.so
- $(INSTALL) -m 0755 libspread.so $(DESTDIR)$(libdir)/libspread.so.$(LIBVERSION)
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libspread.so.$(LIBVERSION) libspread.so)
-
-libtspread.a: $(LIBTSP_OBJS)
- $(AR) rv $@ $(LIBTSP_OBJS)
- $(RANLIB) $@
-
-libtspread.dylib: $(LIBTSP_SHOBJS)
- $(SHLD) -o libtspread.$(LIBVERSION).dylib $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) $(THLIBS)
- $(SOFTLINK) -f libtspread.$(LIBVERSION).dylib $@
-
-install-libtspread.dylib: libtspread.dylib
- $(INSTALL) -m 0755 libtspread.$(LIBVERSION).dylib $(DESTDIR)$(libdir)/libtspread.$(LIBVERSION).dylib
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libtspread.$(LIBVERSION).dylib libtspread.dylib)
-
-libtspread.so: $(LIBTSP_SHOBJS)
- $(SHLD) -o $@ $(LIBTSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) $(THLIBS)
-
-install-libtspread.so: libtspread.so
- $(INSTALL) -m 0755 libtspread.so $(DESTDIR)$(libdir)/libtspread.so.$(LIBVERSION)
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libtspread.so.$(LIBVERSION) libtspread.so)
-
-spread$(EXEEXT): $(SPREADOBJS)
- $(LD) -o $@ $(SPREADOBJS) $(LDFLAGS) $(LIBS)
-
-spuser$(EXEEXT): libspread.a user.o
- $(LD) -o $@ user.o $(LDFLAGS) libspread.a $(LIBS)
-
-spflooder$(EXEEXT): libspread.a flooder.o
- $(LD) -o $@ flooder.o $(LDFLAGS) libspread.a $(LIBS)
-
-spmonitor$(EXEEXT): $(MONITOR_OBJS)
- $(LD) -o $@ $(MONITOR_OBJS) $(LDFLAGS) $(LIBS)
-
-sptmonitor$(EXEEXT): $(TMONITOR_OBJS)
- $(LD) $(THLDFLAGS) -o $@ $(TMONITOR_OBJS) $(LDFLAGS) $(LIBS) $(THLIBS)
-
-sptuser$(EXEEXT): user.to libtspread.a
- $(LD) $(THLDFLAGS) -o $@ user.to libtspread.a $(LDFLAGS) $(LIBS) $(THLIBS)
-
-spsimple_user$(EXEEXT): simple_user.o libspread.a
- $(LD) -o $@ simple_user.o $(LDFLAGS) libspread.a $(LIBS)
-
-testprog: spsend$(EXEEXT) sprecv$(EXEEXT)
-
-spsend$(EXEEXT): s.o alarm.o data_link.o events.o memory.o
- $(LD) -o $@ s.o alarm.o data_link.o events.o memory.o $(LDFLAGS) $(LIBS)
-
-sprecv$(EXEEXT): r.o alarm.o data_link.o
- $(LD) -o $@ r.o alarm.o data_link.o $(LDFLAGS) $(LIBS)
-
-$(MANPAGES): $(MANPAGES_IN)
- @if [ ! -d docs ]; then \
- $(buildtoolsdir)/mkinstalldirs docs; \
- fi
- @if test "$(MANTYPE)" = "cat"; then \
- manpage=$(srcdir)/`echo $@ | sed 's/\.[1-9]\.out$$/\.0/'`; \
- else \
- manpage=$(srcdir)/`echo $@ | sed 's/\.out$$//'`; \
- fi; \
- if test "$(MANTYPE)" = "man"; then \
- $(FIXPATHSCMD) $${manpage} | $(PERL) $(buildtoolsdir)/mdoc2man.pl > $@; \
- else \
- $(FIXPATHSCMD) $${manpage} > $@; \
- fi
-
clean:
- rm -f *.lo *.tlo *.to *.o *.a *.dylib $(TARGETS) spsimple_user
- rm -f config.cache config.log docs/*.out core
+ for dir in $(SUBDIRS); do \
+ ( $(MAKE) -C $$dir clean); \
+ done
+
+ rm -f config.cache config.log core
rm -rf autom4te.cache
distclean: clean
+ for dir in $(SUBDIRS); do \
+ ( $(MAKE) -C $$dir distclean); \
+ done
rm -f Makefile config.h config.status *~
mrproper: distclean
@@ -210,83 +24,17 @@
veryclean: distclean
rm -f configure
-catman-do:
- @for f in $(MANPAGES_IN) ; do \
- base=`echo $$f | sed 's/\..*$$//'` ; \
- echo "$$f -> $$base.0" ; \
- nroff -mandoc $$f | cat -v | sed -e 's/.\^H//g' \
- >$$base.0 ; \
+install: $(SUBDIRS)
+ for dir in $(SUBDIRS); do \
+ ( $(MAKE) -C $$dir install); \
done
-distprep: catman-do
- autoreconf
-
-install: $(TARGETS) install-files install-@LIBSPSO@ install-@LIBTSPSO@
-
-install-files:
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(bindir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sbindir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(includedir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)1
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)3
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(libdir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(includedir)
- $(INSTALL) -m 0755 -s spmonitor$(EXEEXT) $(DESTDIR)$(bindir)/spmonitor$(EXEEXT)
- $(INSTALL) -m 0755 -s spuser$(EXEEXT) $(DESTDIR)$(bindir)/spuser$(EXEEXT)
- $(INSTALL) -m 0755 -s sptuser$(EXEEXT) $(DESTDIR)$(bindir)/sptuser$(EXEEXT)
- $(INSTALL) -m 0755 -s spflooder$(EXEEXT) $(DESTDIR)$(bindir)/spflooder$(EXEEXT)
- $(INSTALL) -m 0755 -s spread$(EXEEXT) $(DESTDIR)$(sbindir)/spread$(EXEEXT)
- $(INSTALL) -m 644 libspread.a $(DESTDIR)$(libdir)/libspread.a
- $(INSTALL) -m 644 libtspread.a $(DESTDIR)$(libdir)/libtspread.a
- $(INSTALL) -m 644 $(srcdir)/sp.h $(DESTDIR)$(includedir)/sp.h
- $(INSTALL) -m 644 $(srcdir)/sp_func.h $(DESTDIR)$(includedir)/sp_func.h
- $(INSTALL) -m 644 $(srcdir)/sp_events.h $(DESTDIR)$(includedir)/sp_events.h
- $(INSTALL) -m 644 docs/spread.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
- $(INSTALL) -m 644 docs/spuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spuser.1
- $(INSTALL) -m 644 docs/sptuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
- $(INSTALL) -m 644 docs/spflooder.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
- $(INSTALL) -m 644 docs/spmonitor.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
- $(INSTALL) -m 644 docs/libsp.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
- for page in connect disconnect equal_group_ids error join leave multicast multigroup_multicast multigroup_scat_multicast poll receive scat_multicast scat_receive; \
- do \
- $(INSTALL) -m 644 docs/SP_$$page.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/SP_$$page.3; \
+uninstallall: uninstall
+ for dir in $(SUBDIRS); do \
+ ( $(MAKE) -C $$dir uninstallall); \
done
- if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \
- fi
- if [ ! -f $(DESTDIR)$(sysconfdir)/spread.conf ]; then \
- $(INSTALL) -m 644 $(srcdir)/sample.spread.conf $(DESTDIR)$(sysconfdir)/spread.conf; \
- else \
- echo "$(DESTDIR)$(sysconfdir)/spread.conf already exists, install will not overwrite"; \
- fi
-uninstallall: uninstall
- -rm -f $(DESTDIR)$(sysconfdir)/spread.conf
- -rmdir $(DESTDIR)$(sysconfdir)
- -rmdir $(DESTDIR)$(bindir)
- -rmdir $(DESTDIR)$(sbindir)
- -rmdir $(DESTDIR)$(mandir)/$(mansubdir)1
- -rmdir $(DESTDIR)$(mandir)/$(mansubdir)3
- -rmdir $(DESTDIR)$(mandir)
- -rmdir $(DESTDIR)$(libdir)
- -rmdir $(DESTDIR)$(includedir)
-
uninstall:
- -rm -f $(DESTDIR)$(bindir)/spuser$(EXEEXT)
- -rm -f $(DESTDIR)$(bindir)/spmonitor$(EXEEXT)
- -rm -f $(DESTDIR)$(bindir)/spflooder$(EXEEXT)
- -rm -f $(DESTDIR)$(bindir)/sptuser$(EXEEXT)
- -rm -f $(DESTDIR)$(sbindir)/spread$(EXEEXT)
- -rm -f $(DESTDIR)$(libdir)/libspread.a
- -rm -f $(DESTDIR)$(libdir)/libtspread.a
- -rm -f $(DESTDIR)$(includedir)/sp.h
- -rm -f $(DESTDIR)$(includedir)/sp_func.h
- -rm -f $(DESTDIR)$(includedir)/sp_events.h
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)3/SP_*.3
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spuser.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
+ for dir in $(SUBDIRS); do \
+ ( $(MAKE) -C $$dir uninstall); \
+ done
Copied: trunk/Readme.txt (from rev 237, trunk/daemon/Readme.txt)
===================================================================
--- trunk/daemon/Readme.txt 2005-07-08 18:32:44 UTC (rev 237)
+++ trunk/Readme.txt 2005-07-09 22:49:04 UTC (rev 240)
@@ -0,0 +1,261 @@
+SPREAD: A Reliable Multicast and Group Communication Toolkit
+-----------------------------------------------------------
+
+/===========================================================================\
+| The Spread Group Communication Toolkit. |
+| Copyright (c) 1993-2005 Spread Concepts LLC |
+| All rights reserved. |
+| |
+| The Spread package is licensed under the Spread Open-Source License. |
+| You may only use this software in compliance with the License. |
+| A copy of the license can be found at http://www.spread.org/license |
+| |
+| This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF |
+| ANY KIND, either express or implied. |
+| |
+| Spread is developed at Spread Concepts LLC and the Center for Networking |
+| and Distributed Systems, The Johns Hopkins University. |
+| |
+| Creators: |
+| Yair Amir [email protected] |
+| Michal Miskin-Amir [email protected] |
+| Jonathan Stanton [email protected] |
+| |
+| Major Contributors: |
+| Cristina Nita-Rotaru [email protected] - GC security. |
+| Theo Schlossnagle [email protected] - Perl, skiplists, autoconf. |
+| Dan Schoenblum [email protected] - Java interface. |
+| John Schultz [email protected] - contribution to process |
+| group membership. |
+| |
+| Contributors: |
+| Ryan Caudy [email protected] - Group membership |
+| Ben Laurie [email protected] - FreeBSD port and warning fixes |
+| Daniel Rall [email protected] - Java & networking fixes, |
+| configuration improvements |
+| Marc Zyngier - Windows fixes |
+| |
+| Special thanks to the following for providing ideas and/or code: |
+| Ken Birman, Danny Dolev, Mike Goodrich, Ben Laurie, |
+| David Shaw, Robbert VanRenesse. |
+| |
+| Partial funding provided by the Defense Advanced Research Projects Agency |
+| (DARPA) and The National Security Agency (NSA) since 2000. The Spread |
+| toolkit is not necessarily endorsed by DARPA or the NSA. |
+| |
+| WWW : http://www.spread.org and http://www.cnds.jhu.edu |
+| Contact: [email protected] |
+| |
+| Version 4.0.0 built XX/YYY/2005 |
+\===========================================================================/
+
+XXX XX, 2005 Ver 4.0.0
+---------------------------
+See changes in Changelog file.
+
+SOURCE INSTALL:
+---------------
+
+The source install uses autoconf and make to support many Unix and unix-like
+platforms as well as Windows 95+.
+
+Windows is supported by a set of Visual Studio desktop and project files in
+the win32 subdirectory. These files build the daemon, libraries, and user
+programs.
+
+Any not-specifically supported
+platform that has reasonably close to normal sockets networking should also
+be easily portable. See the file PORTING for hints on porting.
+
+From the directory where you unpacked the Spread source distribution do
+the following:
+
+1) Run "./configure"
+
+2) Run "make"
+
+3) Run "make install" as a user with rights to write to the selected
+installation location. (/usr/local/{bin,man,sbin,include,lib} by default)
+
+4) Create a spread.conf file appropriate to your local configuration. For
+more info on how to do this look at the sample file "sample.spread.conf"
+or below in the binary install instructions.
+
+
+BINARY INSTALL:
+--------
+
+We recommend that if you are experimenting with spread you create a special
+'spread' directory (for example /usr/local/spread or /opt/spread) and keep
+all the files together there so it is easy to find stuff. That also makes
+it easier to run multiple architectures as the binaries for each are in their
+own subdirectory. This is not necessary though. You can create that directory
+anywhere (e.g. your own directory).
+
+If you are installing spread for active use it is probably easier to just
+install the correct version of the binaries, headers, man pages, and
+libraries into your standard locations. The directions below assume you
+are doing this.
+
+1) Unpack the spread.tar.gz file into a temporary directory
+
+2) Look at the Readme for any updates
+
+3) Now you need to copy the files,
+ I will assume you use /usr/local/{bin,include,lib,man}
+ Replace "ARCH" with the directory for your architecure.
+
+ cp -p include/* /usr/local/include/
+ cp -p ARCH/libspread.a /usr/local/lib/
+ cp -p ARCH/libtspread.a /usr/local/lib/
+ cp -p ARCH/spread /usr/local/bin/
+ cp -p ARCH/spmonitor /usr/local/bin/
+ cp -p ARCH/spuser /usr/local/bin/
+ cp -p ARCH/sptuser /usr/local/bin/
+ cp -p ARCH/spflooder /usr/local/bin/
+ cp -p docs/*.3 /usr/local/man/man3/
+ cp -p docs/*.1 /usr/local/man/man1/
+
+4) To run spread you need to modify the 'spread/sample.spread.conf' file for
+ your network configuration. Comments in the sample file explain this.
+ Then cp -p sample.spread.conf /usr/local/bin/spread.conf
+ (Notice the name change. The config file must be named that to be found.
+ Alternatively you can run spread -c <config_file_name> )
+
+ You can run "spread usage" to see the spread running options.
+
+
+To use the Java classes and examples you need to have a copy of the
+main 'spread' daemon running. Then the sp.class file gives you the
+equivelent of the libsp.a as a java class. The user.java, user.html,
+and user.class files give you a demonstration applet and source code.
+The tree.html AllNames.html and packages.html give some documentation
+for the java interface.
+
+For Windows (95/NT) systems use the spread.exe daemon and the libsp.lib
+to link with your programs.
+
+
+OVERVIEW:
+---------
+
+Spread consists of two parts, an executable daemon which is executed on
+each machine which is part of the heavyweight 'machine' group, and a library
+ which provides a programming interface for writing group multicast
+applications and which is linked into the application.
+
+ The daemon, called "spread", should be run as a non-priveledged
+user (we created a 'spread' user) and only needs permissions to create a
+socket in /tmp and read its config file which should be in the same
+directory as the executable. By default the daemon binds to and runs
+off the non-priveledged port 4803 unless the config file indicates otherwise.
+ Each daemon can be started independently and if it does not find
+any other members of its defined configuration currently active it runs as
+a machine group of 1 machine. When other daemons are started they will join
+this machine group.
+
+ The machines which are running a daemon with a common config file
+form a 'machine group' (in contrast to a 'process group'). The daemons
+handle multicasting mesages between each other,providing ordering and
+delivery guarantees, detecting and handling failures of nodes or links, and
+managing all applications which are connected to each daemon.
+
+ Each application utilizing the spread system needs to link with
+the 'libspread.a', 'libtspread.a', 'libtspread.lib' or 'libspread.lib'
+library and needs to use the calls defined in the 'sp.h' and 'sp_func.h'
+header files. Documentation for the interface is currenly incomplete, but
+a basic application must do at least the following:
+
+1) Before using any other spread calls you need to 'connect' to a daemon
+ by calling the
+ SP_connect(...) call. This will set a mbox which is an integer
+representing your connection to the daemon. You use this when making other
+spread calls. You CAN connect to daemons multiple times from the same
+application (and we know of times when this is very useful).
+
+2) If you want to receive messages from a group you need to call SP_join().
+Groups are named with standard alphanumeric strings.
+
+3) To send to a group you do NOT need to join it, just call SP_multicast()
+with an appropriate group name. You will not receive the messages back if
+you are not a member of the group.
+
+4) To be nice to everyone else you should call SP_disconnect() when your
+program is finished using the spread system, if you do not your program's
+disconnection will eventually be detected.
+
+Some important observations when writing spread programs:
+
+1) All the messages for a particular connection are received during an
+SP_receive() call. This includes messages from different groups and
+membership messages(like group leave and join), so you must demultiplex
+them yourself. This is a feature. You can opt to avoid getting membership
+messages all together by indicating that to SP_connect().
+
+2) Spread handles endian differences correctly for metadata and our headers
+but does NOT convert your data for you. It DOES tell you in the SP_receive
+call whether or not the data originated at machine with a different
+endianness then yours so you can easily use this to convert it yourself
+if necessary.
+
+3) Each connection to a daemon has a unique 'private group' name which
+can be used to send a message to a particular, and only to a particular,
+application connection.
+
+4) Spread supports the following ordering/delivery guarantees for messages:
+
+ Unreliable (least)
+ Reliable (will get there, no ordering)
+ Fifo (reliable and ordered fifo by source)
+ Causal (reliable and all mesg from any source of this level
+ are causally ordered)
+ Agreed (reliable and all mesg from any source of this level
+ are totally ordered)
+ Safe (Agreed ordering and mesg will not be delivered to
+ application until the mesg has reached ALL
+ receipients' daemons)
+
+For more detail, much of which IS important, see papers on
+Extended Virtual Sychrony, Transis and Totem.
+
+
+UTILITY PROGRAMS:
+-----------------
+
+ Spread comes with several demonstration programs and useful tools.
+They can be found in the main daemon directory as well as the example
+directory.
+
+1) spmonitor:
+ This program has a special interface to spread which allows it to
+control a machine group. It can terminate all the spread daemons in the
+group, change flow control parameters, and monitor the stats for one or all
+of the machines. It needs to know the spread.conf file used for a particular
+ set of spread daemons.
+
+2) spuser:
+
+ This program is provided with source and uses all the functions of
+the spread interface. It also acts as a simple client which is useful for
+testing. Reading the source code to this program should show you how to use
+all the features of spread, and answer many questions about syntax details.
+
+3) simple_user:
+
+ This is just about the simplest spread program possible and is
+provided with source. It sends and receives text strings.
+
+4) spflooder:
+
+ This is used as one type of performace test. It 'floods' a spread
+group with data messages. It is provided with source.
+
+
+CONTACT:
+--------
+
+If you have any questions please feel free to contact:
+
+ [email protected]
+ [email protected]
+ [email protected]
Deleted: trunk/daemon/CVS_Readme.txt
===================================================================
--- trunk/daemon/CVS_Readme.txt 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/daemon/CVS_Readme.txt 2005-07-09 22:49:04 UTC (rev 240)
@@ -1,67 +0,0 @@
-Documentation on using Spread from CVS.
---------------------------------------
-The main development is done on the HEAD branch. (default)
-
-There may be release branches for older releases if needed.
-
-
-To checkout a copy
-
-cvs -d :ext:cvs.spread.org:/storage/cvsroot checkout spread
-
-You should now have a 'spread' directory which contains the subdirectories:
-
- * spread/daemon with the Spread daemon and C library code.
- * spread/javalib with the Java library code.
- * spread/javaapps with sample Java applications.
- * spread/perl with the Perl library code.
-
-
-To Build from a clean CVS checkout
-----------------------------------
-You normally just need to run:
-
-./configure
-make parser
-make
-su (if you use the standard /usr/local install target)
-make install
-
-The only extra is the "make parser" line which is needed to build
-the lex/yacc files. They are not auto-generated by the make file
-because of the numerous buggy lex/yacc implementations out there.
-This way you can make sure you only generate the parsers from a
-machine with a good implementation.
-
-If you change 'configure.in' or related files, you need to regenerate the
-configure script.
-
-From the spread/daemon/ directory,
-to rebuild the configure script you need to run:
-
-autoconf -I buildtools
-
-If you add new header defines you may also need to run
-autoheader -I buildtools
-
-
-To make a new release of Spread
--------------------------------
-
-- Code Changes in release commit
-
- x) Update the Java build files javaapps/build.xml
- <property name="version" value="3.17.2"/>
-
- Also update the spread version in SpreadConnection.java
-
- x) Update Spread version number in daemon/spread_params.h
- SP_MAJOR_VERSION, SP_MINOR_VERSION, SP_PATCH_VERSION
-
- x) Update the SPREAD_VERSION define in sp.h
-
- x) Update build date in spread.c and monitor.c initial Alarm prints.
-
- x) After release source tar is built and parser is built. Make sure
- lex.yy.c does not #include <unistd.h> without protecting it by
- #ifndef ARCH_PC_WIN95 ... #endif
Modified: trunk/daemon/Makefile.in
===================================================================
--- trunk/daemon/Makefile.in 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/daemon/Makefile.in 2005-07-09 22:49:04 UTC (rev 240)
@@ -12,7 +12,7 @@
piddir=@piddir@
srcdir=@srcdir@
top_srcdir=@top_srcdir@
-buildtoolsdir=$(srcdir)/buildtools
+buildtoolsdir=$(top_srcdir)/buildtools
DESTDIR=
VPATH=@srcdir@
@@ -33,7 +33,7 @@
CC=@CC@
LD=@LD@
CFLAGS=@CFLAGS@
-CPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@
+CPPFLAGS=-I. -I$(srcdir) -I$(top_srcdir)/include @CPPFLAGS@ $(PATHS) @DEFS@
LDFLAGS=@LDFLAGS@
LIBS=@LIBS@
THLDFLAGS=@THLDFLAGS@
@@ -43,7 +43,7 @@
SHCC=@SHCC@
SHLD=@SHLD@
SHCFLAGS=@SHCFLAGS@
-SHCPPFLAGS=@SHCPPFLAGS@ -I. -I$(srcdir)
+SHCPPFLAGS=@SHCPPFLAGS@ -I. -I$(srcdir) -I$(top_srcdir)/include
SHLDFLAGS=@SHLDFLAGS@
SHLIBS=@SHLIBS@
RANLIB=@RANLIB@
@@ -53,7 +53,7 @@
ENT=@ENT@
EXEEXT=@EXEEXT@
-TARGETS=spread$(EXEEXT) spuser$(EXEEXT) spflooder$(EXEEXT) spmonitor$(EXEEXT) sptuser${EXEEXT} @LIBSPSO@ @LIBTSPSO@
+TARGETS=spread$(EXEEXT) spmonitor$(EXEEXT) libspread.a libtspread.a @LIBSPSO@ @LIBTSPSO@
LIBSP_OBJS= alarm.o events.o memory.o sp.o
@@ -69,18 +69,8 @@
TMONITOR_OBJS= monitor.to alarm.to events.to memory.to data_link.to lex.yy.to y.tab.to configuration.to skiplist.to acm.to
-MANPAGES = docs/SP_connect.3.out docs/SP_disconnect.3.out docs/SP_equal_group_ids.3.out docs/SP_error.3.out docs/SP_join.3.out docs/SP_leave.3.out docs/SP_multicast.3.out docs/SP_multigroup_multicast.3.out docs/SP_multigroup_scat_multicast.3.out docs/SP_poll.3.out docs/SP_receive.3.out docs/SP_scat_multicast.3.out docs/SP_scat_receive.3.out docs/libsp.3.out docs/spread.1.out docs/spuser.1.out docs/sptuser.1.out docs/spmonitor.1.out docs/spflooder.1.out
-MANPAGES_IN = docs/SP_connect.3 docs/SP_disconnect.3 docs/SP_equal_group_ids.3 docs/SP_error.3 docs/SP_join.3 docs/SP_leave.3 docs/SP_multicast.3 docs/SP_multigroup_multicast.3 docs/SP_multigroup_scat_multicast.3 docs/SP_poll.3 docs/SP_receive.3 docs/SP_scat_multicast.3 docs/SP_scat_receive.3 docs/libsp.3 docs/spread.1 docs/spuser.1 docs/sptuser.1 docs/spmonitor.1 docs/spflooder.1
-MANTYPE = @MANTYPE@
+all: $(TARGETS)
-PATHSUBS = \
- -D/etc/spread.conf=$(sysconfdir)/spread.conf \
- -D/var/run/spread.pid=$(piddir)/spread.pid
-
-FIXPATHSCMD = $(PERL) $(buildtoolsdir)/fixpaths $(PATHSUBS)
-
-all: $(TARGETS) $(MANPAGES)
-
$(SPREADOBJS): config.h
$(MONITOR_OBJS): config.h
$(TMONITOR_OBJS): config.h
@@ -156,24 +146,12 @@
spread$(EXEEXT): $(SPREADOBJS)
$(LD) -o $@ $(SPREADOBJS) $(LDFLAGS) $(LIBS)
-spuser$(EXEEXT): libspread.a user.o
- $(LD) -o $@ user.o $(LDFLAGS) libspread.a $(LIBS)
-
-spflooder$(EXEEXT): libspread.a flooder.o
- $(LD) -o $@ flooder.o $(LDFLAGS) libspread.a $(LIBS)
-
spmonitor$(EXEEXT): $(MONITOR_OBJS)
$(LD) -o $@ $(MONITOR_OBJS) $(LDFLAGS) $(LIBS)
sptmonitor$(EXEEXT): $(TMONITOR_OBJS)
$(LD) $(THLDFLAGS) -o $@ $(TMONITOR_OBJS) $(LDFLAGS) $(LIBS) $(THLIBS)
-sptuser$(EXEEXT): user.to libtspread.a
- $(LD) $(THLDFLAGS) -o $@ user.to libtspread.a $(LDFLAGS) $(LIBS) $(THLIBS)
-
-spsimple_user$(EXEEXT): simple_user.o libspread.a
- $(LD) -o $@ simple_user.o $(LDFLAGS) libspread.a $(LIBS)
-
testprog: spsend$(EXEEXT) sprecv$(EXEEXT)
spsend$(EXEEXT): s.o alarm.o data_link.o events.o memory.o
@@ -182,21 +160,6 @@
sprecv$(EXEEXT): r.o alarm.o data_link.o
$(LD) -o $@ r.o alarm.o data_link.o $(LDFLAGS) $(LIBS)
-$(MANPAGES): $(MANPAGES_IN)
- @if [ ! -d docs ]; then \
- $(buildtoolsdir)/mkinstalldirs docs; \
- fi
- @if test "$(MANTYPE)" = "cat"; then \
- manpage=$(srcdir)/`echo $@ | sed 's/\.[1-9]\.out$$/\.0/'`; \
- else \
- manpage=$(srcdir)/`echo $@ | sed 's/\.out$$//'`; \
- fi; \
- if test "$(MANTYPE)" = "man"; then \
- $(FIXPATHSCMD) $${manpage} | $(PERL) $(buildtoolsdir)/mdoc2man.pl > $@; \
- else \
- $(FIXPATHSCMD) $${manpage} > $@; \
- fi
-
clean:
rm -f *.lo *.tlo *.to *.o *.a *.dylib $(TARGETS) spsimple_user
rm -f config.cache config.log docs/*.out core
@@ -210,14 +173,6 @@
veryclean: distclean
rm -f configure
-catman-do:
- @for f in $(MANPAGES_IN) ; do \
- base=`echo $$f | sed 's/\..*$$//'` ; \
- echo "$$f -> $$base.0" ; \
- nroff -mandoc $$f | cat -v | sed -e 's/.\^H//g' \
- >$$base.0 ; \
- done
-
distprep: catman-do
autoreconf
@@ -239,19 +194,6 @@
$(INSTALL) -m 0755 -s spread$(EXEEXT) $(DESTDIR)$(sbindir)/spread$(EXEEXT)
$(INSTALL) -m 644 libspread.a $(DESTDIR)$(libdir)/libspread.a
$(INSTALL) -m 644 libtspread.a $(DESTDIR)$(libdir)/libtspread.a
- $(INSTALL) -m 644 $(srcdir)/sp.h $(DESTDIR)$(includedir)/sp.h
- $(INSTALL) -m 644 $(srcdir)/sp_func.h $(DESTDIR)$(includedir)/sp_func.h
- $(INSTALL) -m 644 $(srcdir)/sp_events.h $(DESTDIR)$(includedir)/sp_events.h
- $(INSTALL) -m 644 docs/spread.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
- $(INSTALL) -m 644 docs/spuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spuser.1
- $(INSTALL) -m 644 docs/sptuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
- $(INSTALL) -m 644 docs/spflooder.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
- $(INSTALL) -m 644 docs/spmonitor.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
- $(INSTALL) -m 644 docs/libsp.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
- for page in connect disconnect equal_group_ids error join leave multicast multigroup_multicast multigroup_scat_multicast poll receive scat_multicast scat_receive; \
- do \
- $(INSTALL) -m 644 docs/SP_$$page.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/SP_$$page.3; \
- done
if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \
fi
@@ -266,11 +208,7 @@
-rmdir $(DESTDIR)$(sysconfdir)
-rmdir $(DESTDIR)$(bindir)
-rmdir $(DESTDIR)$(sbindir)
- -rmdir $(DESTDIR)$(mandir)/$(mansubdir)1
- -rmdir $(DESTDIR)$(mandir)/$(mansubdir)3
- -rmdir $(DESTDIR)$(mandir)
-rmdir $(DESTDIR)$(libdir)
- -rmdir $(DESTDIR)$(includedir)
uninstall:
-rm -f $(DESTDIR)$(bindir)/spuser$(EXEEXT)
@@ -280,13 +218,3 @@
-rm -f $(DESTDIR)$(sbindir)/spread$(EXEEXT)
-rm -f $(DESTDIR)$(libdir)/libspread.a
-rm -f $(DESTDIR)$(libdir)/libtspread.a
- -rm -f $(DESTDIR)$(includedir)/sp.h
- -rm -f $(DESTDIR)$(includedir)/sp_func.h
- -rm -f $(DESTDIR)$(includedir)/sp_events.h
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)3/SP_*.3
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spuser.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
Deleted: trunk/daemon/Readme.txt
===================================================================
--- trunk/daemon/Readme.txt 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/daemon/Readme.txt 2005-07-09 22:49:04 UTC (rev 240)
@@ -1,269 +0,0 @@
-SPREAD: A Reliable Multicast and Group Communication Toolkit
------------------------------------------------------------
-
-/===========================================================================\
-| The Spread Group Communication Toolkit. |
-| Copyright (c) 1993-2004 Spread Concepts LLC |
-| All rights reserved. |
-| |
-| The Spread package is licensed under the Spread Open-Source License. |
-| You may only use this software in compliance with the License. |
-| A copy of the license can be found at http://www.spread.org/license |
-| |
-| This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF |
-| ANY KIND, either express or implied. |
-| |
-| Spread is developed at Spread Concepts LLC and the Center for Networking |
-| and Distributed Systems, The Johns Hopkins University. |
-| |
-| Creators: |
-| Yair Amir [email protected] |
-| Michal Miskin-Amir [email protected] |
-| Jonathan Stanton [email protected] |
-| |
-| Major Contributors: |
-| Cristina Nita-Rotaru [email protected] - GC security. |
-| Theo Schlossnagle [email protected] - Perl, skiplists, autoconf. |
-| Dan Schoenblum [email protected] - Java interface. |
-| John Schultz [email protected] - contribution to process |
-| group membership. |
-| |
-| Contributors: |
-| Ryan Caudy [email protected] - Group membership |
-| Ben Laurie [email protected] - FreeBSD port and warning fixes |
-| Daniel Rall [email protected] - Java & networking fixes, |
-| configuration improvements |
-| Marc Zyngier - Windows fixes |
-| |
-| Special thanks to the following for providing ideas and/or code: |
-| Ken Birman, Danny Dolev, Mike Goodrich, Ben Laurie, |
-| David Shaw, Robbert VanRenesse. |
-| |
-| Partial funding provided by the Defense Advanced Research Projects Agency |
-| (DARPA) and The National Security Agency (NSA) since 2000. The Spread |
-| toolkit is not necessarily endorsed by DARPA or the NSA. |
-| |
-| WWW : http://www.spread.org and http://www.cnds.jhu.edu |
-| Contact: [email protected] |
-| |
-| Version 3.17.3 built 15/October/2004 |
-\===========================================================================/
-
-XXX XX, 2004 Ver 3.17.x
----------------------------
-See changes in Changelog file.
-
-SOURCE INSTALL:
----------------
-
-The source install uses autoconf and make to support many Unix and unix-like
-platforms as well as Windows 95+.
-
-Windows is supported by a set of Visual Studio desktop and project files in
-the win32 subdirectory. These files build the daemon, libraries, and user
-programs.
-
-Any not-specifically supported
-platform that has reasonably close to normal sockets networking should also
-be easily portable. See the file PORTING for hints on porting.
-
-From the directory where you unpacked the Spread source distribution do
-the following:
-
-1) Run "./configure"
-
-2) Run "make"
-
-3) Run "make install" as a user with rights to write to the selected
-installation location. (/usr/local/{bin,man,sbin,include,lib} by default)
-
-4) Create a spread.conf file appropriate to your local configuration. For
-more info on how to do this look at the sample file "sample.spread.conf"
-or below in the binary install instructions.
-
-
-BINARY INSTALL:
---------
-
-We recommend that if you are experimenting with spread you create a special
-'spread' directory (for example /usr/local/spread or /opt/spread) and keep
-all the files together there so it is easy to find stuff. That also makes
-it easier to run multiple architectures as the binaries for each are in their
-own subdirectory. This is not necessary though. You can create that directory
-anywhere (e.g. your own directory).
-
-If you are installing spread for active use it is probably easier to just
-install the correct version of the binaries, headers, man pages, and
-libraries into your standard locations. The directions below assume you
-are doing this.
-
-1) Unpack the spread.tar.gz file into a temporary directory
-
-2) Look at the Readme for any updates
-
-3) Select the appropriate architecture:
- arch-bsdi
- arch-sgi
- arch-sunos
- arch-sunsol
- arch-pcsol
- arch-linux
-
-4) Type 'make arch-????' with your architecture as the option to make
-
-5) Now you need to copy the files,
- I will assume you use /usr/local/{bin,include,lib,man}
- Replace "ARCH" with the directory for your architecure.
-
- cp -p include/* /usr/local/include/
- cp -p ARCH/libspread.a /usr/local/lib/
- cp -p ARCH/libtspread.a /usr/local/lib/
- cp -p ARCH/spread /usr/local/bin/
- cp -p ARCH/spmonitor /usr/local/bin/
- cp -p ARCH/spuser /usr/local/bin/
- cp -p ARCH/sptuser /usr/local/bin/
- cp -p ARCH/spflooder /usr/local/bin/
- cp -p docs/*.3 /usr/local/man/man3/
- cp -p docs/*.1 /usr/local/man/man1/
-
-6) To run spread you need to modify the 'spread/sample.spread.conf' file for
- your network configuration. Comments in the sample file explain this.
- Then cp -p sample.spread.conf /usr/local/bin/spread.conf
- (Notice the name change. The config file must be named that to be found.
- Alternatively you can run spread -c <config_file_name> )
-
- You can run "spread usage" to see the spread running options.
-
-
-To use the Java classes and examples you need to have a copy of the
-main 'spread' daemon running. Then the sp.class file gives you the
-equivelent of the libsp.a as a java class. The user.java, user.html,
-and user.class files give you a demonstration applet and source code.
-The tree.html AllNames.html and packages.html give some documentation
-for the java interface.
-
-For Windows (95/NT) systems use the spread.exe daemon and the libsp.lib
-to link with your programs.
-
-
-OVERVIEW:
----------
-
-Spread consists of two parts, an executable daemon which is executed on
-each machine which is part of the heavyweight 'machine' group, and a library
- which provides a programming interface for writing group multicast
-applications and which is linked into the application.
-
- The daemon, called "spread", should be run as a non-priveledged
-user (we created a 'spread' user) and only needs permissions to create a
-socket in /tmp and read its config file which should be in the same
-directory as the executable. By default the daemon binds to and runs
-off the non-priveledged port 4803 unless the config file indicates otherwise.
- Each daemon can be started independently and if it does not find
-any other members of its defined configuration currently active it runs as
-a machine group of 1 machine. When other daemons are started they will join
-this machine group.
-
- The machines which are running a daemon with a common config file
-form a 'machine group' (in contrast to a 'process group'). The daemons
-handle multicasting mesages between each other,providing ordering and
-delivery guarantees, detecting and handling failures of nodes or links, and
-managing all applications which are connected to each daemon.
-
- Each application utilizing the spread system needs to link with
-the 'libspread.a', 'libtspread.a', 'libtspread.lib' or 'libspread.lib'
-library and needs to use the calls defined in the 'sp.h' and 'sp_func.h'
-header files. Documentation for the interface is currenly incomplete, but
-a basic application must do at least the following:
-
-1) Before using any other spread calls you need to 'connect' to a daemon
- by calling the
- SP_connect(...) call. This will set a mbox which is an integer
-representing your connection to the daemon. You use this when making other
-spread calls. You CAN connect to daemons multiple times from the same
-application (and we know of times when this is very useful).
-
-2) If you want to receive messages from a group you need to call SP_join().
-Groups are named with standard alphanumeric strings.
-
-3) To send to a group you do NOT need to join it, just call SP_multicast()
-with an appropriate group name. You will not receive the messages back if
-you are not a member of the group.
-
-4) To be nice to everyone else you should call SP_disconnect() when your
-program is finished using the spread system, if you do not your program's
-disconnection will eventually be detected.
-
-Some important observations when writing spread programs:
-
-1) All the messages for a particular connection are received during an
-SP_receive() call. This includes messages from different groups and
-membership messages(like group leave and join), so you must demultiplex
-them yourself. This is a feature. You can opt to avoid getting membership
-messages all together by indicating that to SP_connect().
-
-2) Spread handles endian differences correctly for metadata and our headers
-but does NOT convert your data for you. It DOES tell you in the SP_receive
-call whether or not the data originated at machine with a different
-endianness then yours so you can easily use this to convert it yourself
-if necessary.
-
-3) Each connection to a daemon has a unique 'private group' name which
-can be used to send a message to a particular, and only to a particular,
-application connection.
-
-4) Spread supports the following ordering/delivery guarantees for messages:
-
- Unreliable (least)
- Reliable (will get there, no ordering)
- Fifo (reliable and ordered fifo by source)
- Causal (reliable and all mesg from any source of this level
- are causally ordered)
- Agreed (reliable and all mesg from any source of this level
- are totally ordered)
- Safe (Agreed ordering and mesg will not be delivered to
- application until the mesg has reached ALL
- receipients' daemons)
-
-For more detail, much of which IS important, see papers on
-Extended Virtual Sychrony, Transis and Totem.
-
-
-UTILITY PROGRAMS:
------------------
-
- Spread comes with several demonstration programs and useful tools.
-
-1) spmonitor:
- This program has a special interface to spread which allows it to
-control a machine group. It can terminate all the spread daemons in the
-group, change flow control parameters, and monitor the stats for one or all
-of the machines. It needs to know the spread.conf file used for a particular
- set of spread daemons.
-
-2) spuser:
-
- This program is provided with source and uses all the functions of
-the spread interface. It also acts as a simple client which is useful for
-testing. Reading the source code to this program should show you how to use
-all the features of spread, and answer many questions about syntax details.
-
-3) simple_user:
-
- This is just about the simplest spread program possible and is
-provided with source. It sends and receives text strings.
-
-4) spflooder:
-
- This is used as one type of performace test. It 'floods' a spread
-group with data messages. It is provided with source.
-
-
-CONTACT:
---------
-
-If you have any questions please feel free to contact:
-
- [email protected]
- [email protected]
- [email protected]
Modified: trunk/docs/Makefile.in
===================================================================
--- trunk/docs/Makefile.in 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/docs/Makefile.in 2005-07-09 22:49:04 UTC (rev 240)
@@ -12,65 +12,20 @@
piddir=@piddir@
srcdir=@srcdir@
top_srcdir=@top_srcdir@
-buildtoolsdir=$(srcdir)/buildtools
+buildtoolsdir=$(top_srcdir)/buildtools
DESTDIR=
VPATH=@srcdir@
-SPREAD_PROGRAM=@sbindir@/spread
-SP_MAJOR_VERSION=@SP_MAJOR_VERSION@
-SP_MINOR_VERSION=@SP_MINOR_VERSION@
-SP_PATCH_VERSION=@SP_PATCH_VERSION@
-VERSION=@SP_MAJOR_VERSION@.@SP_MINOR_VERSION@.@SP_PATCH_VERSION@
-#Shared Library version -- Must be changed upon each release
-#Rules: major -- inc for incompatible change
-# : minor -- inc for bugfix or forward compatible change
-LIBVERSION=1.0
-
PATHS=
-CC=@CC@
-LD=@LD@
-CFLAGS=@CFLAGS@
-CPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@
-LDFLAGS=@LDFLAGS@
-LIBS=@LIBS@
-THLDFLAGS=@THLDFLAGS@
-THLIBS=@THLIBS@
-AR=@AR@
-LEX=@LEX@
-SHCC=@SHCC@
-SHLD=@SHLD@
-SHCFLAGS=@SHCFLAGS@
-SHCPPFLAGS=@SHCPPFLAGS@ -I. -I$(srcdir)
-SHLDFLAGS=@SHLDFLAGS@
-SHLIBS=@SHLIBS@
-RANLIB=@RANLIB@
INSTALL=@INSTALL@
SOFTLINK=@LN_S@
PERL=@PERL@
-ENT=@ENT@
-EXEEXT=@EXEEXT@
-TARGETS=spread$(EXEEXT) spuser$(EXEEXT) spflooder$(EXEEXT) spmonitor$(EXEEXT) sptuser${EXEEXT} @LIBSPSO@ @LIBTSPSO@
-
-LIBSP_OBJS= alarm.o events.o memory.o sp.o
-
-LIBSP_SHOBJS= alarm.lo events.lo memory.lo sp.lo
-
-LIBTSP_OBJS= alarm.to events.to memory.to sp.to
-
-LIBTSP_SHOBJS= alarm.tlo events.tlo memory.tlo sp.tlo
-
-SPREADOBJS= spread.o protocol.o session.o groups.o alarm.o events.o memory.o membership.o data_link.o network.o status.o log.o flow_control.o message.o lex.yy.o y.tab.o configuration.o skiplist.o acm.o acp-permit.o auth-null.o auth-ip.o
-
-MONITOR_OBJS= monitor.o alarm.o events.o memory.o data_link.o lex.yy.o y.tab.o configuration.o skiplist.o acm.o
-
-TMONITOR_OBJS= monitor.to alarm.to events.to memory.to data_link.to lex.yy.to y.tab.to configuration.to skiplist.to acm.to
-
-MANPAGES = docs/SP_connect.3.out docs/SP_disconnect.3.out docs/SP_equal_group_ids.3.out docs/SP_error.3.out docs/SP_join.3.out docs/SP_leave.3.out docs/SP_multicast.3.out docs/SP_multigroup_multicast.3.out docs/SP_multigroup_scat_multicast.3.out docs/SP_poll.3.out docs/SP_receive.3.out docs/SP_scat_multicast.3.out docs/SP_scat_receive.3.out docs/libsp.3.out docs/spread.1.out docs/spuser.1.out docs/sptuser.1.out docs/spmonitor.1.out docs/spflooder.1.out
-MANPAGES_IN = docs/SP_connect.3 docs/SP_disconnect.3 docs/SP_equal_group_ids.3 docs/SP_error.3 docs/SP_join.3 docs/SP_leave.3 docs/SP_multicast.3 docs/SP_multigroup_multicast.3 docs/SP_multigroup_scat_multicast.3 docs/SP_poll.3 docs/SP_receive.3 docs/SP_scat_multicast.3 docs/SP_scat_receive.3 docs/libsp.3 docs/spread.1 docs/spuser.1 docs/sptuser.1 docs/spmonitor.1 docs/spflooder.1
+MANPAGES = SP_connect.3.out SP_disconnect.3.out SP_equal_group_ids.3.out SP_error.3.out SP_join.3.out SP_leave.3.out SP_multicast.3.out SP_multigroup_multicast.3.out SP_multigroup_scat_multicast.3.out SP_poll.3.out SP_receive.3.out SP_scat_multicast.3.out SP_scat_receive.3.out libsp.3.out spread.1.out spuser.1.out sptuser.1.out spmonitor.1.out spflooder.1.out
+MANPAGES_IN = SP_connect.3 SP_disconnect.3 SP_equal_group_ids.3 SP_error.3 SP_join.3 SP_leave.3 SP_multicast.3 SP_multigroup_multicast.3 SP_multigroup_scat_multicast.3 SP_poll.3 SP_receive.3 SP_scat_multicast.3 SP_scat_receive.3 libsp.3 spread.1 spuser.1 sptuser.1 spmonitor.1 spflooder.1
MANTYPE = @MANTYPE@
PATHSUBS = \
@@ -79,113 +34,9 @@
FIXPATHSCMD = $(PERL) $(buildtoolsdir)/fixpaths $(PATHSUBS)
-all: $(TARGETS) $(MANPAGES)
+all: $(MANPAGES)
-$(SPREADOBJS): config.h
-$(MONITOR_OBJS): config.h
-$(TMONITOR_OBJS): config.h
-
-.c.o:
- $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
-
-.c.to:
- $(CC) $(CFLAGS) $(CPPFLAGS) -D_REENTRANT -c $< -o $*.to
-
-.c.lo:
- $(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) -c $< -o $*.lo
-
-.c.tlo:
- $(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) -D_REENTRANT -c $< -o $*.tlo
-
-parser:
- $(YACC) -d $(srcdir)/config_parse.y
- $(LEX) $(srcdir)/config_gram.l
-
-#Disabled now because of timestamp errors causing extra regeneration
-#To build parser run "make parser" after ./configure is run.
-#lex.yy.c: config_gram.l y.tab.c
-# $(LEX) config_gram.l
-
-#y.tab.c: config_parse.y
-# $(YACC) -d config_parse.y
-
-none:
- @echo "Skipping shared library creation."
-
-install-none:
- @echo "Skipping shared library installation."
-
-libspread.a: $(LIBSP_OBJS)
- $(AR) rv $@ $(LIBSP_OBJS)
- $(RANLIB) $@
-
-libspread.dylib: $(LIBSP_SHOBJS)
- $(SHLD) -o libspread.$(LIBVERSION).dylib $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS)
- $(SOFTLINK) -f libspread.$(LIBVERSION).dylib $@
-
-install-libspread.dylib: libspread.dylib
- $(INSTALL) -m 0755 libspread.$(LIBVERSION).dylib $(DESTDIR)$(libdir)/libspread.$(LIBVERSION).dylib
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libspread.$(LIBVERSION).dylib libspread.dylib)
-
-libspread.so: $(LIBSP_SHOBJS)
- $(SHLD) -o $@ $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS)
-
-install-libspread.so: libspread.so
- $(INSTALL) -m 0755 libspread.so $(DESTDIR)$(libdir)/libspread.so.$(LIBVERSION)
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libspread.so.$(LIBVERSION) libspread.so)
-
-libtspread.a: $(LIBTSP_OBJS)
- $(AR) rv $@ $(LIBTSP_OBJS)
- $(RANLIB) $@
-
-libtspread.dylib: $(LIBTSP_SHOBJS)
- $(SHLD) -o libtspread.$(LIBVERSION).dylib $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) $(THLIBS)
- $(SOFTLINK) -f libtspread.$(LIBVERSION).dylib $@
-
-install-libtspread.dylib: libtspread.dylib
- $(INSTALL) -m 0755 libtspread.$(LIBVERSION).dylib $(DESTDIR)$(libdir)/libtspread.$(LIBVERSION).dylib
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libtspread.$(LIBVERSION).dylib libtspread.dylib)
-
-libtspread.so: $(LIBTSP_SHOBJS)
- $(SHLD) -o $@ $(LIBTSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) $(THLIBS)
-
-install-libtspread.so: libtspread.so
- $(INSTALL) -m 0755 libtspread.so $(DESTDIR)$(libdir)/libtspread.so.$(LIBVERSION)
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libtspread.so.$(LIBVERSION) libtspread.so)
-
-spread$(EXEEXT): $(SPREADOBJS)
- $(LD) -o $@ $(SPREADOBJS) $(LDFLAGS) $(LIBS)
-
-spuser$(EXEEXT): libspread.a user.o
- $(LD) -o $@ user.o $(LDFLAGS) libspread.a $(LIBS)
-
-spflooder$(EXEEXT): libspread.a flooder.o
- $(LD) -o $@ flooder.o $(LDFLAGS) libspread.a $(LIBS)
-
-spmonitor$(EXEEXT): $(MONITOR_OBJS)
- $(LD) -o $@ $(MONITOR_OBJS) $(LDFLAGS) $(LIBS)
-
-sptmonitor$(EXEEXT): $(TMONITOR_OBJS)
- $(LD) $(THLDFLAGS) -o $@ $(TMONITOR_OBJS) $(LDFLAGS) $(LIBS) $(THLIBS)
-
-sptuser$(EXEEXT): user.to libtspread.a
- $(LD) $(THLDFLAGS) -o $@ user.to libtspread.a $(LDFLAGS) $(LIBS) $(THLIBS)
-
-spsimple_user$(EXEEXT): simple_user.o libspread.a
- $(LD) -o $@ simple_user.o $(LDFLAGS) libspread.a $(LIBS)
-
-testprog: spsend$(EXEEXT) sprecv$(EXEEXT)
-
-spsend$(EXEEXT): s.o alarm.o data_link.o events.o memory.o
- $(LD) -o $@ s.o alarm.o data_link.o events.o memory.o $(LDFLAGS) $(LIBS)
-
-sprecv$(EXEEXT): r.o alarm.o data_link.o
- $(LD) -o $@ r.o alarm.o data_link.o $(LDFLAGS) $(LIBS)
-
$(MANPAGES): $(MANPAGES_IN)
- @if [ ! -d docs ]; then \
- $(buildtoolsdir)/mkinstalldirs docs; \
- fi
@if test "$(MANTYPE)" = "cat"; then \
manpage=$(srcdir)/`echo $@ | sed 's/\.[1-9]\.out$$/\.0/'`; \
else \
@@ -198,9 +49,7 @@
fi
clean:
- rm -f *.lo *.tlo *.to *.o *.a *.dylib $(TARGETS) spsimple_user
- rm -f config.cache config.log docs/*.out core
- rm -rf autom4te.cache
+ rm -f *.out
distclean: clean
rm -f Makefile config.h config.status *~
@@ -221,36 +70,21 @@
distprep: catman-do
autoreconf
-install: $(TARGETS) install-files install-@LIBSPSO@ install-@LIBTSPSO@
+install: install-files
install-files:
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(bindir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sbindir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(includedir)
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)1
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)3
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(libdir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(includedir)
- $(INSTALL) -m 0755 -s spmonitor$(EXEEXT) $(DESTDIR)$(bindir)/spmonitor$(EXEEXT)
- $(INSTALL) -m 0755 -s spuser$(EXEEXT) $(DESTDIR)$(bindir)/spuser$(EXEEXT)
- $(INSTALL) -m 0755 -s sptuser$(EXEEXT) $(DESTDIR)$(bindir)/sptuser$(EXEEXT)
- $(INSTALL) -m 0755 -s spflooder$(EXEEXT) $(DESTDIR)$(bindir)/spflooder$(EXEEXT)
- $(INSTALL) -m 0755 -s spread$(EXEEXT) $(DESTDIR)$(sbindir)/spread$(EXEEXT)
- $(INSTALL) -m 644 libspread.a $(DESTDIR)$(libdir)/libspread.a
- $(INSTALL) -m 644 libtspread.a $(DESTDIR)$(libdir)/libtspread.a
- $(INSTALL) -m 644 $(srcdir)/sp.h $(DESTDIR)$(includedir)/sp.h
- $(INSTALL) -m 644 $(srcdir)/sp_func.h $(DESTDIR)$(includedir)/sp_func.h
- $(INSTALL) -m 644 $(srcdir)/sp_events.h $(DESTDIR)$(includedir)/sp_events.h
- $(INSTALL) -m 644 docs/spread.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
- $(INSTALL) -m 644 docs/spuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spuser.1
- $(INSTALL) -m 644 docs/sptuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
- $(INSTALL) -m 644 docs/spflooder.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
- $(INSTALL) -m 644 docs/spmonitor.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
- $(INSTALL) -m 644 docs/libsp.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
+ $(INSTALL) -m 644 spread.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
+ $(INSTALL) -m 644 spuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spuser.1
+ $(INSTALL) -m 644 sptuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
+ $(INSTALL) -m 644 spflooder.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
+ $(INSTALL) -m 644 spmonitor.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
+ $(INSTALL) -m 644 libsp.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
for page in connect disconnect equal_group_ids error join leave multicast multigroup_multicast multigroup_scat_multicast poll receive scat_multicast scat_receive; \
do \
- $(INSTALL) -m 644 docs/SP_$$page.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/SP_$$page.3; \
+ $(INSTALL) -m 644 SP_$$page.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/SP_$$page.3; \
done
if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \
@@ -262,27 +96,11 @@
fi
uninstallall: uninstall
- -rm -f $(DESTDIR)$(sysconfdir)/spread.conf
- -rmdir $(DESTDIR)$(sysconfdir)
- -rmdir $(DESTDIR)$(bindir)
- -rmdir $(DESTDIR)$(sbindir)
-rmdir $(DESTDIR)$(mandir)/$(mansubdir)1
-rmdir $(DESTDIR)$(mandir)/$(mansubdir)3
-rmdir $(DESTDIR)$(mandir)
- -rmdir $(DESTDIR)$(libdir)
- -rmdir $(DESTDIR)$(includedir)
uninstall:
- -rm -f $(DESTDIR)$(bindir)/spuser$(EXEEXT)
- -rm -f $(DESTDIR)$(bindir)/spmonitor$(EXEEXT)
- -rm -f $(DESTDIR)$(bindir)/spflooder$(EXEEXT)
- -rm -f $(DESTDIR)$(bindir)/sptuser$(EXEEXT)
- -rm -f $(DESTDIR)$(sbindir)/spread$(EXEEXT)
- -rm -f $(DESTDIR)$(libdir)/libspread.a
- -rm -f $(DESTDIR)$(libdir)/libtspread.a
- -rm -f $(DESTDIR)$(includedir)/sp.h
- -rm -f $(DESTDIR)$(includedir)/sp_func.h
- -rm -f $(DESTDIR)$(includedir)/sp_events.h
-rm -f $(DESTDIR)$(mandir)/$(mansubdir)3/SP_*.3
-rm -f $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
-rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
Modified: trunk/examples/Makefile.in
===================================================================
--- trunk/examples/Makefile.in 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/examples/Makefile.in 2005-07-09 22:49:04 UTC (rev 240)
@@ -12,7 +12,7 @@
piddir=@piddir@
srcdir=@srcdir@
top_srcdir=@top_srcdir@
-buildtoolsdir=$(srcdir)/buildtools
+buildtoolsdir=$(top_srcdir)/buildtools
DESTDIR=
VPATH=@srcdir@
@@ -22,30 +22,18 @@
SP_PATCH_VERSION=@SP_PATCH_VERSION@
VERSION=@SP_MAJOR_VERSION@.@SP_MINOR_VERSION@.@SP_PATCH_VERSION@
-#Shared Library version -- Must be changed upon each release
-#Rules: major -- inc for incompatible change
-# : minor -- inc for bugfix or forward compatible change
-
-LIBVERSION=1.0
-
PATHS=
CC=@CC@
LD=@LD@
CFLAGS=@CFLAGS@
-CPPFLAGS=-I. -I$(srcdir) @CPPFLAGS@ $(PATHS) @DEFS@
+CPPFLAGS=-I. -I$(srcdir) -I$(top_srcdir)/include @CPPFLAGS@ $(PATHS) @DEFS@
LDFLAGS=@LDFLAGS@
LIBS=@LIBS@
THLDFLAGS=@THLDFLAGS@
THLIBS=@THLIBS@
AR=@AR@
LEX=@LEX@
-SHCC=@SHCC@
-SHLD=@SHLD@
-SHCFLAGS=@SHCFLAGS@
-SHCPPFLAGS=@SHCPPFLAGS@ -I. -I$(srcdir)
-SHLDFLAGS=@SHLDFLAGS@
-SHLIBS=@SHLIBS@
RANLIB=@RANLIB@
INSTALL=@INSTALL@
SOFTLINK=@LN_S@
@@ -53,38 +41,10 @@
ENT=@ENT@
EXEEXT=@EXEEXT@
-TARGETS=spread$(EXEEXT) spuser$(EXEEXT) spflooder$(EXEEXT) spmonitor$(EXEEXT) sptuser${EXEEXT} @LIBSPSO@ @LIBTSPSO@
+TARGETS=spuser$(EXEEXT) spflooder$(EXEEXT) sptuser${EXEEXT}
-LIBSP_OBJS= alarm.o events.o memory.o sp.o
+all: $(TARGETS)
-LIBSP_SHOBJS= alarm.lo events.lo memory.lo sp.lo
-
-LIBTSP_OBJS= alarm.to events.to memory.to sp.to
-
-LIBTSP_SHOBJS= alarm.tlo events.tlo memory.tlo sp.tlo
-
-SPREADOBJS= spread.o protocol.o session.o groups.o alarm.o events.o memory.o membership.o data_link.o network.o status.o log.o flow_control.o message.o lex.yy.o y.tab.o configuration.o skiplist.o acm.o acp-permit.o auth-null.o auth-ip.o
-
-MONITOR_OBJS= monitor.o alarm.o events.o memory.o data_link.o lex.yy.o y.tab.o configuration.o skiplist.o acm.o
-
-TMONITOR_OBJS= monitor.to alarm.to events.to memory.to data_link.to lex.yy.to y.tab.to configuration.to skiplist.to acm.to
-
-MANPAGES = docs/SP_connect.3.out docs/SP_disconnect.3.out docs/SP_equal_group_ids.3.out docs/SP_error.3.out docs/SP_join.3.out docs/SP_leave.3.out docs/SP_multicast.3.out docs/SP_multigroup_multicast.3.out docs/SP_multigroup_scat_multicast.3.out docs/SP_poll.3.out docs/SP_receive.3.out docs/SP_scat_multicast.3.out docs/SP_scat_receive.3.out docs/libsp.3.out docs/spread.1.out docs/spuser.1.out docs/sptuser.1.out docs/spmonitor.1.out docs/spflooder.1.out
-MANPAGES_IN = docs/SP_connect.3 docs/SP_disconnect.3 docs/SP_equal_group_ids.3 docs/SP_error.3 docs/SP_join.3 docs/SP_leave.3 docs/SP_multicast.3 docs/SP_multigroup_multicast.3 docs/SP_multigroup_scat_multicast.3 docs/SP_poll.3 docs/SP_receive.3 docs/SP_scat_multicast.3 docs/SP_scat_receive.3 docs/libsp.3 docs/spread.1 docs/spuser.1 docs/sptuser.1 docs/spmonitor.1 docs/spflooder.1
-MANTYPE = @MANTYPE@
-
-PATHSUBS = \
- -D/etc/spread.conf=$(sysconfdir)/spread.conf \
- -D/var/run/spread.pid=$(piddir)/spread.pid
-
-FIXPATHSCMD = $(PERL) $(buildtoolsdir)/fixpaths $(PATHSUBS)
-
-all: $(TARGETS) $(MANPAGES)
-
-$(SPREADOBJS): config.h
-$(MONITOR_OBJS): config.h
-$(TMONITOR_OBJS): config.h
-
.c.o:
$(CC) $(CFLAGS) $(CPPFLAGS) -c $<
@@ -97,110 +57,21 @@
.c.tlo:
$(SHCC) $(SHCFLAGS) $(SHCPPFLAGS) -D_REENTRANT -c $< -o $*.tlo
-parser:
- $(YACC) -d $(srcdir)/config_parse.y
- $(LEX) $(srcdir)/config_gram.l
+spuser$(EXEEXT): ../daemon/libspread.a user.o
+ $(LD) -o $@ user.o $(LDFLAGS) ../daemon/libspread.a $(LIBS)
-#Disabled now because of timestamp errors causing extra regeneration
-#To build parser run "make parser" after ./configure is run.
-#lex.yy.c: config_gram.l y.tab.c
-# $(LEX) config_gram.l
+spflooder$(EXEEXT): ../daemon/libspread.a flooder.o
+ $(LD) -o $@ flooder.o $(LDFLAGS) ../daemon/libspread.a $(LIBS)
-#y.tab.c: config_parse.y
-# $(YACC) -d config_parse.y
+sptuser$(EXEEXT): user.to ../daemon/libtspread.a
+ $(LD) $(THLDFLAGS) -o $@ user.to ../daemon/libtspread.a $(LDFLAGS) $(LIBS) $(THLIBS)
-none:
- @echo "Skipping shared library creation."
+spsimple_user$(EXEEXT): simple_user.o ../daemon/libspread.a
+ $(LD) -o $@ simple_user.o $(LDFLAGS) ../daemon/ libspread.a $(LIBS)
-install-none:
- @echo "Skipping shared library installation."
-
-libspread.a: $(LIBSP_OBJS)
- $(AR) rv $@ $(LIBSP_OBJS)
- $(RANLIB) $@
-
-libspread.dylib: $(LIBSP_SHOBJS)
- $(SHLD) -o libspread.$(LIBVERSION).dylib $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS)
- $(SOFTLINK) -f libspread.$(LIBVERSION).dylib $@
-
-install-libspread.dylib: libspread.dylib
- $(INSTALL) -m 0755 libspread.$(LIBVERSION).dylib $(DESTDIR)$(libdir)/libspread.$(LIBVERSION).dylib
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libspread.$(LIBVERSION).dylib libspread.dylib)
-
-libspread.so: $(LIBSP_SHOBJS)
- $(SHLD) -o $@ $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS)
-
-install-libspread.so: libspread.so
- $(INSTALL) -m 0755 libspread.so $(DESTDIR)$(libdir)/libspread.so.$(LIBVERSION)
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libspread.so.$(LIBVERSION) libspread.so)
-
-libtspread.a: $(LIBTSP_OBJS)
- $(AR) rv $@ $(LIBTSP_OBJS)
- $(RANLIB) $@
-
-libtspread.dylib: $(LIBTSP_SHOBJS)
- $(SHLD) -o libtspread.$(LIBVERSION).dylib $(LIBSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) $(THLIBS)
- $(SOFTLINK) -f libtspread.$(LIBVERSION).dylib $@
-
-install-libtspread.dylib: libtspread.dylib
- $(INSTALL) -m 0755 libtspread.$(LIBVERSION).dylib $(DESTDIR)$(libdir)/libtspread.$(LIBVERSION).dylib
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libtspread.$(LIBVERSION).dylib libtspread.dylib)
-
-libtspread.so: $(LIBTSP_SHOBJS)
- $(SHLD) -o $@ $(LIBTSP_SHOBJS) $(SHLDFLAGS) $(SHLIBS) $(THLIBS)
-
-install-libtspread.so: libtspread.so
- $(INSTALL) -m 0755 libtspread.so $(DESTDIR)$(libdir)/libtspread.so.$(LIBVERSION)
- (cd $(DESTDIR)$(libdir); $(SOFTLINK) -f libtspread.so.$(LIBVERSION) libtspread.so)
-
-spread$(EXEEXT): $(SPREADOBJS)
- $(LD) -o $@ $(SPREADOBJS) $(LDFLAGS) $(LIBS)
-
-spuser$(EXEEXT): libspread.a user.o
- $(LD) -o $@ user.o $(LDFLAGS) libspread.a $(LIBS)
-
-spflooder$(EXEEXT): libspread.a flooder.o
- $(LD) -o $@ flooder.o $(LDFLAGS) libspread.a $(LIBS)
-
-spmonitor$(EXEEXT): $(MONITOR_OBJS)
- $(LD) -o $@ $(MONITOR_OBJS) $(LDFLAGS) $(LIBS)
-
-sptmonitor$(EXEEXT): $(TMONITOR_OBJS)
- $(LD) $(THLDFLAGS) -o $@ $(TMONITOR_OBJS) $(LDFLAGS) $(LIBS) $(THLIBS)
-
-sptuser$(EXEEXT): user.to libtspread.a
- $(LD) $(THLDFLAGS) -o $@ user.to libtspread.a $(LDFLAGS) $(LIBS) $(THLIBS)
-
-spsimple_user$(EXEEXT): simple_user.o libspread.a
- $(LD) -o $@ simple_user.o $(LDFLAGS) libspread.a $(LIBS)
-
-testprog: spsend$(EXEEXT) sprecv$(EXEEXT)
-
-spsend$(EXEEXT): s.o alarm.o data_link.o events.o memory.o
- $(LD) -o $@ s.o alarm.o data_link.o events.o memory.o $(LDFLAGS) $(LIBS)
-
-sprecv$(EXEEXT): r.o alarm.o data_link.o
- $(LD) -o $@ r.o alarm.o data_link.o $(LDFLAGS) $(LIBS)
-
-$(MANPAGES): $(MANPAGES_IN)
- @if [ ! -d docs ]; then \
- $(buildtoolsdir)/mkinstalldirs docs; \
- fi
- @if test "$(MANTYPE)" = "cat"; then \
- manpage=$(srcdir)/`echo $@ | sed 's/\.[1-9]\.out$$/\.0/'`; \
- else \
- manpage=$(srcdir)/`echo $@ | sed 's/\.out$$//'`; \
- fi; \
- if test "$(MANTYPE)" = "man"; then \
- $(FIXPATHSCMD) $${manpage} | $(PERL) $(buildtoolsdir)/mdoc2man.pl > $@; \
- else \
- $(FIXPATHSCMD) $${manpage} > $@; \
- fi
-
clean:
rm -f *.lo *.tlo *.to *.o *.a *.dylib $(TARGETS) spsimple_user
- rm -f config.cache config.log docs/*.out core
- rm -rf autom4te.cache
+ rm -f core
distclean: clean
rm -f Makefile config.h config.status *~
@@ -210,83 +81,21 @@
veryclean: distclean
rm -f configure
-catman-do:
- @for f in $(MANPAGES_IN) ; do \
- base=`echo $$f | sed 's/\..*$$//'` ; \
- echo "$$f -> $$base.0" ; \
- nroff -mandoc $$f | cat -v | sed -e 's/.\^H//g' \
- >$$base.0 ; \
- done
-
-distprep: catman-do
+distprep:
autoreconf
install: $(TARGETS) install-files install-@LIBSPSO@ install-@LIBTSPSO@
install-files:
$(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(bindir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sbindir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(includedir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)1
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(mandir)/$(mansubdir)3
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(libdir)
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(includedir)
- $(INSTALL) -m 0755 -s spmonitor$(EXEEXT) $(DESTDIR)$(bindir)/spmonitor$(EXEEXT)
$(INSTALL) -m 0755 -s spuser$(EXEEXT) $(DESTDIR)$(bindir)/spuser$(EXEEXT)
$(INSTALL) -m 0755 -s sptuser$(EXEEXT) $(DESTDIR)$(bindir)/sptuser$(EXEEXT)
$(INSTALL) -m 0755 -s spflooder$(EXEEXT) $(DESTDIR)$(bindir)/spflooder$(EXEEXT)
- $(INSTALL) -m 0755 -s spread$(EXEEXT) $(DESTDIR)$(sbindir)/spread$(EXEEXT)
- $(INSTALL) -m 644 libspread.a $(DESTDIR)$(libdir)/libspread.a
- $(INSTALL) -m 644 libtspread.a $(DESTDIR)$(libdir)/libtspread.a
- $(INSTALL) -m 644 $(srcdir)/sp.h $(DESTDIR)$(includedir)/sp.h
- $(INSTALL) -m 644 $(srcdir)/sp_func.h $(DESTDIR)$(includedir)/sp_func.h
- $(INSTALL) -m 644 $(srcdir)/sp_events.h $(DESTDIR)$(includedir)/sp_events.h
- $(INSTALL) -m 644 docs/spread.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
- $(INSTALL) -m 644 docs/spuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spuser.1
- $(INSTALL) -m 644 docs/sptuser.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
- $(INSTALL) -m 644 docs/spflooder.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
- $(INSTALL) -m 644 docs/spmonitor.1.out $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
- $(INSTALL) -m 644 docs/libsp.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
- for page in connect disconnect equal_group_ids error join leave multicast multigroup_multicast multigroup_scat_multicast poll receive scat_multicast scat_receive; \
- do \
- $(INSTALL) -m 644 docs/SP_$$page.3.out $(DESTDIR)$(mandir)/$(mansubdir)3/SP_$$page.3; \
- done
- if [ ! -d $(DESTDIR)$(sysconfdir) ]; then \
- $(buildtoolsdir)/mkinstalldirs $(DESTDIR)$(sysconfdir); \
- fi
- if [ ! -f $(DESTDIR)$(sysconfdir)/spread.conf ]; then \
- $(INSTALL) -m 644 $(srcdir)/sample.spread.conf $(DESTDIR)$(sysconfdir)/spread.conf; \
- else \
- echo "$(DESTDIR)$(sysconfdir)/spread.conf already exists, install will not overwrite"; \
- fi
uninstallall: uninstall
- -rm -f $(DESTDIR)$(sysconfdir)/spread.conf
- -rmdir $(DESTDIR)$(sysconfdir)
-rmdir $(DESTDIR)$(bindir)
- -rmdir $(DESTDIR)$(sbindir)
- -rmdir $(DESTDIR)$(mandir)/$(mansubdir)1
- -rmdir $(DESTDIR)$(mandir)/$(mansubdir)3
- -rmdir $(DESTDIR)$(mandir)
- -rmdir $(DESTDIR)$(libdir)
- -rmdir $(DESTDIR)$(includedir)
uninstall:
-rm -f $(DESTDIR)$(bindir)/spuser$(EXEEXT)
- -rm -f $(DESTDIR)$(bindir)/spmonitor$(EXEEXT)
-rm -f $(DESTDIR)$(bindir)/spflooder$(EXEEXT)
-rm -f $(DESTDIR)$(bindir)/sptuser$(EXEEXT)
- -rm -f $(DESTDIR)$(sbindir)/spread$(EXEEXT)
- -rm -f $(DESTDIR)$(libdir)/libspread.a
- -rm -f $(DESTDIR)$(libdir)/libtspread.a
- -rm -f $(DESTDIR)$(includedir)/sp.h
- -rm -f $(DESTDIR)$(includedir)/sp_func.h
- -rm -f $(DESTDIR)$(includedir)/sp_events.h
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)3/SP_*.3
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)3/libsp.3
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spread.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spuser.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/sptuser.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spflooder.1
- -rm -f $(DESTDIR)$(mandir)/$(mansubdir)1/spmonitor.1
Modified: trunk/win32/flooder.dsp
===================================================================
--- trunk/win32/flooder.dsp 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32/flooder.dsp 2005-07-09 22:49:04 UTC (rev 240)
@@ -52,7 +52,7 @@
# Name "flooder - Win32 Release"
# Begin Source File
-SOURCE=..\Flooder.c
+SOURCE=..\daemon\Flooder.c
# End Source File
# Begin Source File
Modified: trunk/win32/libsp.dsp
===================================================================
--- trunk/win32/libsp.dsp 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32/libsp.dsp 2005-07-09 22:49:04 UTC (rev 240)
@@ -51,23 +51,23 @@
# Name "libsp - Win32 Release"
# Begin Source File
-SOURCE=..\Alarm.c
+SOURCE=..\daemon\Alarm.c
# End Source File
# Begin Source File
-SOURCE=..\arch.c
+SOURCE=..\daemon\arch.c
# End Source File
# Begin Source File
-SOURCE=..\Events.c
+SOURCE=..\daemon\Events.c
# End Source File
# Begin Source File
-SOURCE=..\memory.c
+SOURCE=..\daemon\memory.c
# End Source File
# Begin Source File
-SOURCE=..\Sp.c
+SOURCE=..\daemon\Sp.c
# End Source File
# End Target
# End Project
Modified: trunk/win32/libtsp.dsp
===================================================================
--- trunk/win32/libtsp.dsp 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32/libtsp.dsp 2005-07-09 22:49:04 UTC (rev 240)
@@ -51,23 +51,23 @@
# Name "libtsp - Win32 Release"
# Begin Source File
-SOURCE=..\alarm.c
+SOURCE=..\daemon\alarm.c
# End Source File
# Begin Source File
-SOURCE=..\arch.c
+SOURCE=..\daemon\arch.c
# End Source File
# Begin Source File
-SOURCE=..\events.c
+SOURCE=..\daemon\events.c
# End Source File
# Begin Source File
-SOURCE=..\memory.c
+SOURCE=..\daemon\memory.c
# End Source File
# Begin Source File
-SOURCE=..\sp.c
+SOURCE=..\daemon\sp.c
# End Source File
# End Target
# End Project
Modified: trunk/win32/r.dsp
===================================================================
--- trunk/win32/r.dsp 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32/r.dsp 2005-07-09 22:49:04 UTC (rev 240)
@@ -52,27 +52,27 @@
# Name "r - Win32 Release"
# Begin Source File
-SOURCE=..\Alarm.c
+SOURCE=..\daemon\Alarm.c
# End Source File
# Begin Source File
-SOURCE=..\arch.c
+SOURCE=..\daemon\arch.c
# End Source File
# Begin Source File
-SOURCE=..\data_link.c
+SOURCE=..\daemon\data_link.c
# End Source File
# Begin Source File
-SOURCE=..\Events.c
+SOURCE=..\daemon\Events.c
# End Source File
# Begin Source File
-SOURCE=..\memory.c
+SOURCE=..\daemon\memory.c
# End Source File
# Begin Source File
-SOURCE=..\r.c
+SOURCE=..\daemon\r.c
# End Source File
# End Target
# End Project
Modified: trunk/win32/s.dsp
===================================================================
--- trunk/win32/s.dsp 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32/s.dsp 2005-07-09 22:49:04 UTC (rev 240)
@@ -52,27 +52,27 @@
# Name "s - Win32 Release"
# Begin Source File
-SOURCE=..\Alarm.c
+SOURCE=..\daemon\Alarm.c
# End Source File
# Begin Source File
-SOURCE=..\arch.c
+SOURCE=..\daemon\arch.c
# End Source File
# Begin Source File
-SOURCE=..\data_link.c
+SOURCE=..\daemon\data_link.c
# End Source File
# Begin Source File
-SOURCE=..\Events.c
+SOURCE=..\daemon\Events.c
# End Source File
# Begin Source File
-SOURCE=..\memory.c
+SOURCE=..\daemon\memory.c
# End Source File
# Begin Source File
-SOURCE=..\s.c
+SOURCE=..\daemon\s.c
# End Source File
# End Target
# End Project
Modified: trunk/win32/spread.dsp
===================================================================
--- trunk/win32/spread.dsp 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32/spread.dsp 2005-07-09 22:49:04 UTC (rev 240)
@@ -52,95 +52,95 @@
# Name "spread - Win32 Release"
# Begin Source File
-SOURCE=..\acm.c
+SOURCE=..\daemon\acm.c
# End Source File
# Begin Source File
-SOURCE="..\acp-permit.c"
+SOURCE="..\daemon\acp-permit.c"
# End Source File
# Begin Source File
-SOURCE=..\Alarm.c
+SOURCE=..\daemon\Alarm.c
# End Source File
# Begin Source File
-SOURCE=..\arch.c
+SOURCE=..\daemon\arch.c
# End Source File
# Begin Source File
-SOURCE="..\auth-ip.c"
+SOURCE="..\daemon\auth-ip.c"
# End Source File
# Begin Source File
-SOURCE="..\auth-null.c"
+SOURCE="..\daemon\auth-null.c"
# End Source File
# Begin Source File
-SOURCE=..\Configuration.c
+SOURCE=..\daemon\Configuration.c
# End Source File
# Begin Source File
-SOURCE=..\Data_link.c
+SOURCE=..\daemon\Data_link.c
# End Source File
# Begin Source File
-SOURCE=..\Events.c
+SOURCE=..\daemon\Events.c
# End Source File
# Begin Source File
-SOURCE=..\Flow_control.c
+SOURCE=..\daemon\Flow_control.c
# End Source File
# Begin Source File
-SOURCE=..\Groups.c
+SOURCE=..\daemon\Groups.c
# End Source File
# Begin Source File
-SOURCE=..\lex.yy.c
+SOURCE=..\daemon\lex.yy.c
# End Source File
# Begin Source File
-SOURCE=..\Log.c
+SOURCE=..\daemon\Log.c
# End Source File
# Begin Source File
-SOURCE=..\Membership.c
+SOURCE=..\daemon\Membership.c
# End Source File
# Begin Source File
-SOURCE=..\memory.c
+SOURCE=..\daemon\memory.c
# End Source File
# Begin Source File
-SOURCE=..\message.c
+SOURCE=..\daemon\message.c
# End Source File
# Begin Source File
-SOURCE=..\Network.c
+SOURCE=..\daemon\Network.c
# End Source File
# Begin Source File
-SOURCE=..\Protocol.c
+SOURCE=..\daemon\Protocol.c
# End Source File
# Begin Source File
-SOURCE=..\Session.c
+SOURCE=..\daemon\Session.c
# End Source File
# Begin Source File
-SOURCE=..\skiplist.c
+SOURCE=..\daemon\skiplist.c
# End Source File
# Begin Source File
-SOURCE=..\Spread.c
+SOURCE=..\daemon\Spread.c
# End Source File
# Begin Source File
-SOURCE=..\Status.c
+SOURCE=..\daemon\Status.c
# End Source File
# Begin Source File
-SOURCE=..\y.tab.c
+SOURCE=..\daemon\y.tab.c
# End Source File
# End Target
# End Project
Modified: trunk/win32/sptmonitor.dsp
===================================================================
--- trunk/win32/sptmonitor.dsp 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32/sptmonitor.dsp 2005-07-09 22:49:04 UTC (rev 240)
@@ -52,47 +52,47 @@
# Name "sptmonitor - Win32 Release"
# Begin Source File
-SOURCE=..\acm.c
+SOURCE=..\daemon\acm.c
# End Source File
# Begin Source File
-SOURCE=..\alarm.c
+SOURCE=..\daemon\alarm.c
# End Source File
# Begin Source File
-SOURCE=..\arch.c
+SOURCE=..\daemon\arch.c
# End Source File
# Begin Source File
-SOURCE=..\configuration.c
+SOURCE=..\daemon\configuration.c
# End Source File
# Begin Source File
-SOURCE=..\data_link.c
+SOURCE=..\daemon\data_link.c
# End Source File
# Begin Source File
-SOURCE=..\events.c
+SOURCE=..\daemon\events.c
# End Source File
# Begin Source File
-SOURCE=..\lex.yy.c
+SOURCE=..\daemon\lex.yy.c
# End Source File
# Begin Source File
-SOURCE=..\memory.c
+SOURCE=..\daemon\memory.c
# End Source File
# Begin Source File
-SOURCE=..\monitor.c
+SOURCE=..\daemon\monitor.c
# End Source File
# Begin Source File
-SOURCE=..\skiplist.c
+SOURCE=..\daemon\skiplist.c
# End Source File
# Begin Source File
-SOURCE=..\y.tab.c
+SOURCE=..\daemon\y.tab.c
# End Source File
# End Target
# End Project
Modified: trunk/win32/tuser.dsp
===================================================================
--- trunk/win32/tuser.dsp 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32/tuser.dsp 2005-07-09 22:49:04 UTC (rev 240)
@@ -53,7 +53,7 @@
# Name "tuser - Win32 Release"
# Begin Source File
-SOURCE=..\user.c
+SOURCE=..\daemon\user.c
# End Source File
# Begin Source File
Modified: trunk/win32_msvc_net/libspread.vcproj
===================================================================
--- trunk/win32_msvc_net/libspread.vcproj 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32_msvc_net/libspread.vcproj 2005-07-09 22:49:04 UTC (rev 240)
@@ -21,7 +21,7 @@
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="..\"
+ AdditionalIncludeDirectories="..\daemon\"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;ARCH_PC_WIN95"
StringPooling="TRUE"
RuntimeLibrary="4"
@@ -51,19 +51,19 @@
</Configurations>
<Files>
<File
- RelativePath="..\alarm.c">
+ RelativePath="..\daemon\alarm.c">
</File>
<File
- RelativePath="..\arch.c">
+ RelativePath="..\daemon\arch.c">
</File>
<File
- RelativePath="..\events.c">
+ RelativePath="..\daemon\events.c">
</File>
<File
- RelativePath="..\memory.c">
+ RelativePath="..\daemon\memory.c">
</File>
<File
- RelativePath="..\sp.c">
+ RelativePath="..\daemon\sp.c">
</File>
</Files>
<Globals>
Modified: trunk/win32_msvc_net/libtspread.vcproj
===================================================================
--- trunk/win32_msvc_net/libtspread.vcproj 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32_msvc_net/libtspread.vcproj 2005-07-09 22:49:04 UTC (rev 240)
@@ -21,7 +21,7 @@
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="..\"
+ AdditionalIncludeDirectories="..\daemon\"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB;ARCH_PC_WIN95;_REENTRANT"
StringPooling="TRUE"
RuntimeLibrary="0"
@@ -51,19 +51,19 @@
</Configurations>
<Files>
<File
- RelativePath="..\alarm.c">
+ RelativePath="..\daemon\alarm.c">
</File>
<File
- RelativePath="..\arch.c">
+ RelativePath="..\daemon\arch.c">
</File>
<File
- RelativePath="..\events.c">
+ RelativePath="..\daemon\events.c">
</File>
<File
- RelativePath="..\memory.c">
+ RelativePath="..\daemon\memory.c">
</File>
<File
- RelativePath="..\sp.c">
+ RelativePath="..\daemon\sp.c">
</File>
</Files>
<Globals>
Modified: trunk/win32_msvc_net/spflooder.vcproj
===================================================================
--- trunk/win32_msvc_net/spflooder.vcproj 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32_msvc_net/spflooder.vcproj 2005-07-09 22:49:04 UTC (rev 240)
@@ -21,7 +21,7 @@
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="..\"
+ AdditionalIncludeDirectories="..\daemon\"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;ARCH_PC_WIN95"
StringPooling="TRUE"
RuntimeLibrary="4"
@@ -61,7 +61,7 @@
</Configurations>
<Files>
<File
- RelativePath="..\flooder.c">
+ RelativePath="..\daemon\flooder.c">
</File>
</Files>
<Globals>
Modified: trunk/win32_msvc_net/spread.vcproj
===================================================================
--- trunk/win32_msvc_net/spread.vcproj 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32_msvc_net/spread.vcproj 2005-07-09 22:49:04 UTC (rev 240)
@@ -21,7 +21,7 @@
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="..\"
+ AdditionalIncludeDirectories="..\daemon\"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;ARCH_PC_WIN95"
StringPooling="TRUE"
RuntimeLibrary="4"
@@ -61,73 +61,73 @@
</Configurations>
<Files>
<File
- RelativePath="..\acm.c">
+ RelativePath="..\daemon\acm.c">
</File>
<File
- RelativePath="..\acp-permit.c">
+ RelativePath="..\daemon\acp-permit.c">
</File>
<File
- RelativePath="..\alarm.c">
+ RelativePath="..\daemon\alarm.c">
</File>
<File
- RelativePath="..\arch.c">
+ RelativePath="..\daemon\arch.c">
</File>
<File
- RelativePath="..\auth-ip.c">
+ RelativePath="..\daemon\auth-ip.c">
</File>
<File
- RelativePath="..\auth-null.c">
+ RelativePath="..\daemon\auth-null.c">
</File>
<File
- RelativePath="..\configuration.c">
+ RelativePath="..\daemon\configuration.c">
</File>
<File
- RelativePath="..\data_link.c">
+ RelativePath="..\daemon\data_link.c">
</File>
<File
- RelativePath="..\events.c">
+ RelativePath="..\daemon\events.c">
</File>
<File
- RelativePath="..\flow_control.c">
+ RelativePath="..\daemon\flow_control.c">
</File>
<File
- RelativePath="..\groups.c">
+ RelativePath="..\daemon\groups.c">
</File>
<File
- RelativePath="..\lex.yy.c">
+ RelativePath="..\daemon\lex.yy.c">
</File>
<File
- RelativePath="..\log.c">
+ RelativePath="..\daemon\log.c">
</File>
<File
- RelativePath="..\membership.c">
+ RelativePath="..\daemon\membership.c">
</File>
<File
- RelativePath="..\memory.c">
+ RelativePath="..\daemon\memory.c">
</File>
<File
- RelativePath="..\message.c">
+ RelativePath="..\daemon\message.c">
</File>
<File
- RelativePath="..\network.c">
+ RelativePath="..\daemon\network.c">
</File>
<File
- RelativePath="..\protocol.c">
+ RelativePath="..\daemon\protocol.c">
</File>
<File
- RelativePath="..\session.c">
+ RelativePath="..\daemon\session.c">
</File>
<File
- RelativePath="..\skiplist.c">
+ RelativePath="..\daemon\skiplist.c">
</File>
<File
- RelativePath="..\spread.c">
+ RelativePath="..\daemon\spread.c">
</File>
<File
- RelativePath="..\status.c">
+ RelativePath="..\daemon\status.c">
</File>
<File
- RelativePath="..\y.tab.c">
+ RelativePath="..\daemon\y.tab.c">
</File>
</Files>
<Globals>
Modified: trunk/win32_msvc_net/sprecv.vcproj
===================================================================
--- trunk/win32_msvc_net/sprecv.vcproj 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32_msvc_net/sprecv.vcproj 2005-07-09 22:49:04 UTC (rev 240)
@@ -21,7 +21,7 @@
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="..\"
+ AdditionalIncludeDirectories="..\daemon\"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;ARCH_PC_WIN95"
StringPooling="TRUE"
RuntimeLibrary="4"
@@ -61,22 +61,22 @@
</Configurations>
<Files>
<File
- RelativePath="..\alarm.c">
+ RelativePath="..\daemon\alarm.c">
</File>
<File
- RelativePath="..\arch.c">
+ RelativePath="..\daemon\arch.c">
</File>
<File
- RelativePath="..\data_link.c">
+ RelativePath="..\daemon\data_link.c">
</File>
<File
- RelativePath="..\events.c">
+ RelativePath="..\daemon\events.c">
</File>
<File
- RelativePath="..\memory.c">
+ RelativePath="..\daemon\memory.c">
</File>
<File
- RelativePath="..\r.c">
+ RelativePath="..\daemon\r.c">
</File>
</Files>
<Globals>
Modified: trunk/win32_msvc_net/spsend.vcproj
===================================================================
--- trunk/win32_msvc_net/spsend.vcproj 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32_msvc_net/spsend.vcproj 2005-07-09 22:49:04 UTC (rev 240)
@@ -21,7 +21,7 @@
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="..\"
+ AdditionalIncludeDirectories="..\daemon\"
PreprocessorDefinitions="ARCH_PC_WIN95;WIN32;NDEBUG;_CONSOLE"
StringPooling="TRUE"
RuntimeLibrary="4"
@@ -61,22 +61,22 @@
</Configurations>
<Files>
<File
- RelativePath="..\alarm.c">
+ RelativePath="..\daemon\alarm.c">
</File>
<File
- RelativePath="..\arch.c">
+ RelativePath="..\daemon\arch.c">
</File>
<File
- RelativePath="..\data_link.c">
+ RelativePath="..\daemon\data_link.c">
</File>
<File
- RelativePath="..\events.c">
+ RelativePath="..\daemon\events.c">
</File>
<File
- RelativePath="..\memory.c">
+ RelativePath="..\daemon\memory.c">
</File>
<File
- RelativePath="..\s.c">
+ RelativePath="..\daemon\s.c">
</File>
</Files>
<Globals>
Modified: trunk/win32_msvc_net/sptmonitor.vcproj
===================================================================
--- trunk/win32_msvc_net/sptmonitor.vcproj 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32_msvc_net/sptmonitor.vcproj 2005-07-09 22:49:04 UTC (rev 240)
@@ -21,7 +21,7 @@
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="..\"
+ AdditionalIncludeDirectories="..\daemon\"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;ARCH_PC_WIN95;_REENTRANT"
StringPooling="TRUE"
RuntimeLibrary="0"
@@ -61,37 +61,37 @@
</Configurations>
<Files>
<File
- RelativePath="..\acm.c">
+ RelativePath="..\daemon\acm.c">
</File>
<File
- RelativePath="..\alarm.c">
+ RelativePath="..\daemon\alarm.c">
</File>
<File
- RelativePath="..\arch.c">
+ RelativePath="..\daemon\arch.c">
</File>
<File
- RelativePath="..\configuration.c">
+ RelativePath="..\daemon\configuration.c">
</File>
<File
- RelativePath="..\data_link.c">
+ RelativePath="..\daemon\data_link.c">
</File>
<File
- RelativePath="..\events.c">
+ RelativePath="..\daemon\events.c">
</File>
<File
- RelativePath="..\lex.yy.c">
+ RelativePath="..\daemon\lex.yy.c">
</File>
<File
- RelativePath="..\memory.c">
+ RelativePath="..\daemon\memory.c">
</File>
<File
- RelativePath="..\monitor.c">
+ RelativePath="..\daemon\monitor.c">
</File>
<File
- RelativePath="..\skiplist.c">
+ RelativePath="..\daemon\skiplist.c">
</File>
<File
- RelativePath="..\y.tab.c">
+ RelativePath="..\daemon\y.tab.c">
</File>
</Files>
<Globals>
Modified: trunk/win32_msvc_net/sptuser.vcproj
===================================================================
--- trunk/win32_msvc_net/sptuser.vcproj 2005-07-08 19:23:59 UTC (rev 239)
+++ trunk/win32_msvc_net/sptuser.vcproj 2005-07-09 22:49:04 UTC (rev 240)
@@ -21,7 +21,7 @@
Optimization="2"
InlineFunctionExpansion="1"
OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="..\"
+ AdditionalIncludeDirectories="..\daemon\"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;ARCH_PC_WIN95;_REENTRANT"
StringPooling="TRUE"
RuntimeLibrary="0"
@@ -61,7 +61,7 @@
</Configurations>
<Files>
<File
- RelativePath="..\user.c">
+ RelativePath="..\daemon\user.c">
</File>
</Files>
<Globals>
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.