Added distribution rule to take care of CRLF translation ; wrote some html notes on build system and updated the build checklist

svn path=/trunk/boinc/; revision=1326
This commit is contained in:
Karl Chen 2003-06-06 21:38:44 +00:00
parent 6b8ef7e603
commit 07da50e9fd
7 changed files with 70 additions and 23 deletions

View File

@ -1 +1,6 @@
config.h
boinc-*.tar.gz
boinc-*.tar.bz2
boinc-*.zip
stamp-h*
configure.lineno

View File

@ -1,3 +1,4 @@
*.xml
projects
slots
master.html # generated by test scripts

View File

@ -62,3 +62,7 @@ EXTRA_DIST = \
clean-local:
rm @CLIENT_BIN_FILENAME@
## remove carriage returns in case CVS screwed it up.
dist-hook:
cd $(distdir)/win_build && perl -pi.bak -e 'tr /\r//d' boinc.dsw */*.dsp

View File

@ -9,7 +9,7 @@ dnl not sure exactly what the minimum version is (but 2.13 won't work)
AC_PREREQ(2.57)
dnl Process this file with autoconf to produce a configure script.
AC_INIT(BOINC, 1.02, [seti@ssl.berkeley.edu])
AC_INIT(BOINC, 1.03, [davea@ssl.berkeley.edu])
AC_CANONICAL_SYSTEM
@ -32,7 +32,7 @@ under the License.
The Original Code is the Berkeley Open Infrastructure for Network Computing.
The Initial Developer of the Original Code is the SETI@home project.
Portions created by the SETI@home project are Copyright (C) 2002
Portions created by the SETI@home project are Copyright (C) 2002, 2003
University of California at Berkeley. All Rights Reserved.
Contributor(s):

View File

@ -25,7 +25,7 @@ before getting into the source code.
Core client
</b></font>
<ul>
<li> <a href=build.txt>Building the core client</a>
<li> <a href=build.txt>Building the core client</a> (<a href=build_system.html>Build system</a>)
<li> <a href=client_files.html>File structure</a>
<li> <a href=client_fsm.html>FSM structure</a>
<li> <a href=client_data.html>Data structures</a>

View File

@ -53,7 +53,13 @@ Setup Build Environments
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
UNIX/Linux
* ?
* g++ (tested with 2.95, 3.3)
* standard build tools: make (and ...?)
* If you modify make files: autoconf 2.57, automake 1.7
* for building source distributions: tar, gzip, bzip2, zip
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Windows
@ -66,8 +72,6 @@ Windows
* InstallShield 5.5 Professional Edition.
* WinCvs 1.2, available from www.wincvs.org.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Macintosh
@ -81,8 +85,6 @@ Macintosh
Build Source Release
0 Run on a UNIX/Linux machine with the unix2dos program installed
1 Get latest source using CVS
1.1 At command line, enter:
@ -94,22 +96,9 @@ Build Source Release
cvs -z3 -d:pserver:anonymous@cvs.boinc.sourceforge.net:/cvsroot/boinc co boinc
2 Make source tarballs and zipfiles
2 Make source distributions (.tar.gz, .tar.bz2, .zip)
2.1 Fix Windows workspace/project files
2.1.1 Using CVS on UNIX will often change carriage returns on Windows workspace
and project files, which means they are corrupted in the eyes of Visual Studio.
2.1.2 cd boinc/win_build
2.1.3 unix2dos boinc.dsw ; unix2dos */*.dsp
2.2 setenv BOINC_MAJOR_VERSION x
setenv BOINC_MINOR_VERSION y
Where x.y is the release version number.
2.3 cd boinc
2.4 ./configure; make zip; make tar
2.5 cd client
2.6 ./configure; make zip; make tar
2.1 cd boinc && ./configure && make dist-client
-------------------------------------------------------------------------

48
doc/build_system.html Normal file
View File

@ -0,0 +1,48 @@
<!-- $Id$ -->
<html>
<head>
<title>Build system</title>
</head>
<body>
<h3>Details of the automake/autoconf build system</h3>
<p>
The build system uses <a href=
"http://www.gnu.org/software/autoconf/">autoconf</a> 2.57 and <a
href="http://www.gnu.org/software/automake/automake.html">automake</a>
1.7. You should modify only the <code>Makefile.am</code> files, which
generate the <code>Makefile.in</code> files (and
the <code>configure</code> script produced by autoconf will generate the
<code>Makefile</code>s from those).
</p>
<p>
The top-level <code>Makefile.am</code> contains the
<code>SUBDIRS=</code> line which sets up directory recursion, and the
rules for creating source distributions.
<p>
To make distributions:
<pre>
make dist
make dist-client
</pre>
</p>
<p>
... will make the full and client distributions respectively. (The client
distribution contains everything necessary to compile the client; the
full distribution contains everything necessary to compile the server
and client.)
</p>
<p>
Each will make <code>.tar.gz</code>, <code>.tar.bz2</code>,
and <code>.zip</code> files. You can also make only the individual ones
using the make
targets <code>dist-bzip2</code>, <code>dist-gzip</code>, <code>dist-zip</code>.
</p>
</body>
</html>