summaryrefslogtreecommitdiff
path: root/doc/build.htm
diff options
context:
space:
mode:
Diffstat (limited to 'doc/build.htm')
-rw-r--r--doc/build.htm150
1 files changed, 150 insertions, 0 deletions
diff --git a/doc/build.htm b/doc/build.htm
new file mode 100644
index 0000000..d494b94
--- /dev/null
+++ b/doc/build.htm
@@ -0,0 +1,150 @@
+<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+<HEAD>
+ <TITLE>Building Version 9.4 of Icon from Source</TITLE>
+ <LINK REL="STYLESHEET" TYPE="text/css" HREF="istyle.css">
+ <LINK REL="SHORTCUT ICON" HREF="shortcut.gif">
+</HEAD>
+<BODY>
+
+<P><A HREF="http://www.cs.arizona.edu/icon/"> <IMG SRC="wwwcube.gif"
+ALT="[Icon home]" WIDTH=128 HEIGHT=144 BORDER=0 ALIGN=RIGHT> </A>
+
+<H1>Building Version 9.4 of Icon from Source</H1>
+
+<P> Gregg M. Townsend
+<BR> <SMALL> Department of Computer Science </SMALL>
+<BR> <SMALL> The University of Arizona </SMALL>
+
+<P> <SMALL> www.cs.arizona.edu/icon/v943/build.htm
+<BR> Last updated November 8, 2005 </SMALL>
+<!-- $Id: build.htm,v 1.26 2005/11/08 23:24:34 gmt Exp $ -->
+
+<H2> Introduction </H2>
+
+<P> These instructions explain how to build and install the source code of
+<A HREF=relnotes.htm>Version 9.4 of Icon</A> under Unix.
+For instructions on installing a binary release, see
+<A HREF=install.htm>Installing Icon Binaries</A>.
+
+<P> These instructions assume that you have unpacked the Icon
+distribution file into a directory.
+All commands are issued in that directory.
+
+<H2> Configuring </H2>
+
+<P> The Icon source package contains configurations for a variety of
+Unix platforms.
+Type <CODE>make Configure</CODE> to see the list of known configurations.
+A status report for any system can be viewed by entering
+<BLOCKQUOTE>
+ <CODE>make Status name=</CODE><VAR>name</VAR>
+</BLOCKQUOTE>
+Choose the configuration name that matches your system's
+operating system, and be sure to note
+any special considerations given in its status report.
+
+<P><SMALL> (If your system is not among those listed, you will need to
+port the code.
+This is usually a fairly simple matter that involves copying an existing
+configuration and editing it to match the target system.
+See <A HREF=port.htm>Porting Icon</A>.
+</SMALL>
+
+<P> Most Unix systems include the X11 window system; type
+<BLOCKQUOTE>
+ <CODE>make X-Configure name=</CODE><VAR>name</VAR>
+</BLOCKQUOTE>
+to configure Icon with graphics.
+If your computer does not have the X window system, type
+<BLOCKQUOTE>
+ <CODE>make Configure name=</CODE><VAR>name</VAR>
+</BLOCKQUOTE>
+to configure Icon without graphics.
+
+<P> Installation using any of the supplied configurations <EM>should</EM>
+be routine, but some of those were contributed for systems we cannot test,
+and it is possible that some minor tweaking may be required.
+If so, or if you develop a new configuration, we'd like to hear about it
+by e-mail to
+<A HREF="mailto:icon-project@cs.arizona.edu">icon-project@cs.arizona.edu</A>.
+
+<H2> Building </H2>
+
+<P> After Configuring, type <CODE>make</CODE> to build the Icon system.
+This single step now builds:
+<UL>
+ <LI> The Icon translator and interpreter
+ <LI> Program library procedures
+ <LI> VIB and other graphics utilities, if graphics are enabled
+</UL>
+
+<P> There may be a few warnings on some platforms, but there should be
+no fatal errors.
+If there are problems,
+fix them in the <CODE>config/</CODE><VAR>platform</VAR>
+directory and repeat the configuration step.
+
+<H2> Testing </H2>
+
+<P> To verify a successful build, type <CODE>make Test</CODE>.
+This command compiles and executes a series of Icon programs,
+comparing their outputs with a set of standard results.
+A normal run concludes with the phrase "All tests passed."
+
+<P> A successful graphics build can be confirmed by executing
+<CODE>bin/colrbook</CODE>, the color book utility, with no arguments.
+It should display a spectrum of colors along the left and a set
+of recessed panes to the right.
+Click anywhere on the spectrum to fill colors in the panes.
+Click <CODE>QUIT</CODE> (in the upper left corner) to exit.
+
+<H2> Installing </H2>
+
+<P> Icon can be run directly from the location in which it was built.
+To do this, simply add the <CODE>bin</CODE> directory to your shell's
+search path.
+See the man pages for <A HREF=icon.txt><CODE>icon</CODE></A>
+and <A HREF=icont.txt><CODE>icont</CODE></A>
+for instructions on building and running Icon programs.
+
+<P> If you wish to install the binaries elsewhere,
+choose a location for a directory dedicated to Icon &mdash;
+for example, <CODE>/opt/icon</CODE> or <CODE>/usr/local/icon</CODE>.
+If you are replacing an existing directory, delete the old one first.
+Enter
+<BLOCKQUOTE>
+ <CODE>make Install dest=</CODE><VAR>directory</VAR>
+</BLOCKQUOTE>
+to create <VAR>directory</VAR> and install Icon in its
+<CODE>bin</CODE>, <CODE>lib</CODE>,
+<CODE>doc</CODE>, and <CODE>man</CODE> subdirectories.
+All files are created using the default permissions
+<CITE>(umask)</CITE> of the current user.
+
+<P> You can make symbolic links from other locations
+to programs in the Icon <CODE>bin</CODE> directory.
+For example, you can link
+<CODE>/usr/local/bin/icon</CODE> to <CODE>/opt/icon/bin/icon</CODE>.
+If you do this, link all of <CODE>icon</CODE>, <CODE>icont</CODE>,
+<CODE>iconx</CODE>, and (if present) <CODE>vib</CODE>.
+
+<P> If you'd like to bundle up a gzipped tar file of the binaries
+created by the build process, enter <CODE>make Package</CODE>.
+Such a package can be used to install binaries on other
+systems of the same architecture.
+
+<H2> Cleaning Up </H2>
+
+<P> Type <CODE>make Clean</CODE> to remove intermediate files created
+during the build process. This command preserves the contents of the
+<CODE>bin</CODE> and <CODE>lib</CODE> directories, so the built system
+remains functional.
+
+<P> To restore everything to its original state, type <CODE>make Pure</CODE>.
+This removes all the configuration information and newly built files.
+
+<P> <HR>
+
+</BODY>
+</HTML>