[Zope-CVS] CVS: Packages/Spread - README:1.3

Guido van Rossum guido@python.org
Wed, 19 Dec 2001 09:55:21 -0500

Update of /cvs-repository/Packages/Spread
In directory cvs.zope.org:/tmp/cvs-serv17886

Modified Files:
Log Message:
More instructions.  Patch to make the Makefile install the header

=== Packages/Spread/README 1.2 => 1.3 ===
+This package contains a simple Python wrapper for the Spread toolkit.
 Spread (www.spread.org) is a group communications package.  You'll
 need to download and install it separately.  The Python API has been
 built and tested against Spread 3.16, including a patch available from
-the Web page.
+the Web page.  More recently (Dec 19, 2001) also against Spread
+3.16.1, without extra patches.
+Build instructions for Spread are way down in the Spread Readme.txt
+file; search for "INSTALL".  Basically, you do:
+    cp LINUX_makefile Makefile
+    patch Makefile <(this README file)
+    make
 The Spread makefiles do an odd install, putting things in
 /var/tmp/testinstall by default.  It does *not* install header files,
-so you'll need to copy those into place by hand.  I copied sp.h,
-sp_events.h, and sp_func.h into /var/tmp/testinstall/include.  I'm
-told the next release will install headers.
+the patch below fixes that.  The only header files you need are sp.h,
+sp_events.h, and sp_func.h.  You can force the Makefile to install in
+/usr/local by saying
+    make BASEDIR=/usr/local install
+and that's what I recommend.  As long as you apply the patch below,
+this will also take care of the header files.
+For Windows, download the Spread binary install -- the bottom entry
+in the dropdown menu on the Spread download page.
 The distutils setup.py script needs to be told where the spread code
 is installed.  I still don't know the preferred way to do that, so
-you'll need to edit the SPREAD_DIR constant.  The setup script assumes
-you've installed the header files manually.
+you'll need to edit the SPREAD_DIR constant in the right branch.  The
+setup script assumes you've installed the header files.  Assuming you
+followed the recipe above, including the "make install" part, the
+SPREAD_DIR constant is already set up right and you can do this to
+build the Python wrapper for Spread:
+    python setup.py build
 The man pages installed by Spread (and available at www.spread.org)
 are fairly helpful, although obscure at times.  There is no
@@ -25,4 +46,43 @@
 provides a good way to do this.  (I wish it did.)  The following works
 for me:
-    PYTHONPATH=build/lib.linux-i686-2.1 python testspread.py
+    PYTHONPATH=build/lib.linux-i686-2.2
+    export PYTHONPATH
+    python testspread.py
+Here's the patch for the Makefile to install the header files:
+*** LINUX_makefile	Wed Aug 22 17:33:39 2001
+--- Makefile	Wed Dec 19 09:42:28 2001
+*** 50,56 ****
+  run_spread : run_spread.o
+  	$(CC) -o run_spread run_spread.o
+! install: install_bin install_lib install_man
+  install_bin:
+  	$(INSTALL) -m 0755 -d ${BASEDIR}/bin
+--- 50,56 ----
+  run_spread : run_spread.o
+  	$(CC) -o run_spread run_spread.o
+! install: install_bin install_lib install_man install_include
+  install_bin:
+  	$(INSTALL) -m 0755 -d ${BASEDIR}/bin
+*** 76,81 ****
+--- 76,86 ----
+  			$(INSTALL) -m 644 $$CMD $$MAN_DIR; \
+                  done; \
+          done
++ install_include:
++ 	$(INSTALL) -m 0644 sp.h $(BASEDIR)/include
++ 	$(INSTALL) -m 0644 sp_events.h $(BASEDIR)/include
++ 	$(INSTALL) -m 0644 sp_func.h $(BASEDIR)/include
+  s : s.o alarm.o data_link.o events.o memory.o
+  	$(CC) -o s s.o alarm.o data_link.o events.o memory.o