~ chicken-core (chicken-5) a613223a8c950bb083fff982433a21c1ee97ff25


commit a613223a8c950bb083fff982433a21c1ee97ff25
Author:     felix <felix@call-with-current-continuation.org>
AuthorDate: Sat Sep 3 21:56:53 2011 +0200
Commit:     felix <felix@call-with-current-continuation.org>
CommitDate: Sat Sep 3 21:56:53 2011 +0200

    applied README changes by alaric

diff --git a/README b/README
index ba863c7f..ef47cce4 100644
--- a/README
+++ b/README
@@ -53,12 +53,14 @@
         either setting makefile variables on the "make" command line or 
         by editing the platform-specific makefile.
 
+    2.1. Building from a release tarball
+
         To build CHICKEN, first extract the archive ("tar xzf
         chicken-<version>.tar.gz" on UNIX or use your favorite
         extraction program on Windows), then change to the
         chicken-<version> directory and invoke "make" like this:
 
-          make PLATFORM=<platform> PREFIX=<destination>
+            make PLATFORM=<platform> PREFIX=<destination>
 
         where "PLATFORM" specifies on what kind of system CHICKEN
         shall be built and "PREFIX" specifies where the executables
@@ -72,26 +74,53 @@
 	Note that parallel builds (using the "-j" make(1) option) are
 	*not* supported.
 
+        If you invoke "make" later with different configuration parameters,
+        it is advisable to run:
+
+            make PLATFORM=<platform> confclean
+
+        to remove old configuration files.
+
+    2.2. Building from git
+
         If you build CHICKEN directly from the development sources out
         of the git repository, you will need a "chicken" executable to
         generate the compiled C files from the Scheme library
-        sources. If you have a recent version of CHICKEN installed,
-        then pass "CHICKEN=<chicken-executable>" to the "make"
-        invocation to override this setting. "CHICKEN" defaults to
-        "$PREFIX/bin/chicken".
+        sources.
+
+        If you are building in a checkout where you have built other
+        versions of chicken, you need to make sure that all traces of
+        the previous build are removed. "make clean" is insufficient,
+        and you should do the following:
+
+	    make PLATFORM=<platform> spotless
+
+	If you have a recent version of CHICKEN installed, then pass
+        "CHICKEN=<chicken-executable>" to the "make" invocation to
+        override this setting. "CHICKEN" defaults to "chicken".
 
         If you do not have a "chicken" binary installed, you will have
-	to obtain a "bootstrapping" compiler, which can either be
-	built from a release tarball (see below for instructions) or
-	by using a precompiled and statically linked compiler binary
-	from here:
+	to build from the closest release tarball to the git version
+	you are trying to build (significantly older or newer ones are
+	unlikely to work), and then use that chicken to build from
+	your git sources. You don't need to install the release
+	tarball chicken; simply unpack and build it in its own
+	directory with "make PLATFORM=<platform>", then use it to
+	build your git chicken like so:
+
+	    LD_LIBRARY_PATH=<release dir> make PLATFORM=<platform> \
+              CHICKEN=<release dir>/chicken
+
+        The LD_LIBRARY_PATH is needed on Linux to allow chicken to
+        find libchicken; it may or may not be needed on your platform,
+        but probably won't do any harm.
 
-	  http://code.call-cc.org/bootstrap/
+    2.3. Finishing the installation
 
         If CHICKEN is built successfully, you can install it on your
         system by entering
 
-          make PLATFORM=<platform> PREFIX=<destination> install
+            make PLATFORM=<platform> PREFIX=<destination> install
 
         "PREFIX" defaults to "/usr/local". Note that the PREFIX is
         compiled into several CHICKEN tools and must be the same
@@ -102,6 +131,8 @@
         It designates the directory where the files are installed
         into.
 
+    2.4. Optional features
+
         You can further enable various optional features by adding
         one or more of the following variables to the "make"
         invocation:
@@ -186,6 +217,8 @@
 	  LLVM version of gcc and with "clang", the LLVM-based C compiler,
 	  just set C_COMPILER to "llvm-gcc" or "clang".
 
+    2.5. Uninstalling Chicken
+
         To remove CHICKEN from your file-system, enter (probably as
         root):
 
@@ -194,12 +227,7 @@
         (If you gave DESTDIR during installation, you have to pass
         the same setting to "make" when uninstalling)
 
-        In case you invoke "make" with different configuration parameters,
-        it is advisable to run 
-
-            make PLATFORM=<platform> confclean
-
-        to remove old configuration files.
+    2.6. What gets installed
 
 	These files will be installed under the prefix given during
 	build and installation:
Trap