added setup target to main Makefile, and getting started document
This commit is contained in:
parent
750f091ba4
commit
c3fd7b9be1
|
@ -21,7 +21,7 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# Author : $Author: maroy $
|
# Author : $Author: maroy $
|
||||||
# Version : $Revision: 1.2 $
|
# Version : $Revision: 1.3 $
|
||||||
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/Attic/Makefile,v $
|
# Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/Attic/Makefile,v $
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -33,6 +33,7 @@ RM = rm -f
|
||||||
RMDIR = rm -rf
|
RMDIR = rm -rf
|
||||||
DOXYGEN = doxygen
|
DOXYGEN = doxygen
|
||||||
XSLTPROC = xsltproc
|
XSLTPROC = xsltproc
|
||||||
|
ECHO = @echo
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
|
@ -49,15 +50,49 @@ TESTRESULTS_XSLT = ${ETC_DIR}/testResultsToHtml.xsl
|
||||||
TESTRESULTS_IN = ${ETC_DIR}/testResults.xml
|
TESTRESULTS_IN = ${ETC_DIR}/testResults.xml
|
||||||
TESTRESULTS_FILE = ${DOC_DIR}/testResults.html
|
TESTRESULTS_FILE = ${DOC_DIR}/testResults.html
|
||||||
|
|
||||||
|
TOOLS_DIR = ${BASE_DIR}/tools
|
||||||
|
|
||||||
|
BOOST_DIR = ${TOOLS_DIR}/boost
|
||||||
|
BOOST_VERSION = boost-1.31
|
||||||
|
LIBXMLXX_DIR = ${TOOLS_DIR}/libxml++
|
||||||
|
LIBXMLXX_VERSION = libxml++-1.0.4
|
||||||
|
CXXUNIT_DIR = ${TOOLS_DIR}/cppunit
|
||||||
|
CXXUNIT_VERSION = cppunit-1.10.2
|
||||||
|
LIBODBCXX_DIR = ${TOOLS_DIR}/libodbc++
|
||||||
|
LIBODBCXX_VERSION = libodbc++-0.2.3
|
||||||
|
XMLRPCXX_DIR = ${TOOLS_DIR}/xmlrpc++
|
||||||
|
XMLRPCXX_VERSION = xmlrpc++-20040713
|
||||||
|
|
||||||
|
MODULES_DIR = ${BASE_DIR}/modules
|
||||||
|
CORE_DIR = ${MODULES_DIR}/core
|
||||||
|
DB_DIR = ${MODULES_DIR}/db
|
||||||
|
STORAGE_DIR = ${MODULES_DIR}/storage
|
||||||
|
|
||||||
|
PRODUCTS_DIR = ${BASE_DIR}/products
|
||||||
|
SCHEDULER_DIR = ${PRODUCTS_DIR}/scheduler
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
# Targets
|
# Targets
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
.PHONY: all doc clean docclean depclean distclean testresults
|
.PHONY: all doc clean docclean depclean distclean doxygen testresults
|
||||||
|
.PHONY: setup tools_setup modules_setup products_setup
|
||||||
|
|
||||||
all: doc
|
all: printusage
|
||||||
|
|
||||||
doc:
|
printusage:
|
||||||
|
${ECHO} "LiveSupport project main Makefile"
|
||||||
|
${ECHO} "http://livesupport.campware.org/"
|
||||||
|
${ECHO} "Copyright (c) 2004 Media Development Loan Fund under the GNU GPL"
|
||||||
|
${ECHO} ""
|
||||||
|
${ECHO} "Useful targets for this makefile:"
|
||||||
|
${ECHO} " setup - set up the development environment"
|
||||||
|
${ECHO} " doc - build autogenerated documentation"
|
||||||
|
${ECHO} " doxygen - build autogenerated doxygen documentation only"
|
||||||
|
|
||||||
|
doc: doxygen testresults
|
||||||
|
|
||||||
|
doxygen:
|
||||||
${DOXYGEN} ${DOXYGEN_CONFIG}
|
${DOXYGEN} ${DOXYGEN_CONFIG}
|
||||||
|
|
||||||
testresults:
|
testresults:
|
||||||
|
@ -65,3 +100,21 @@ testresults:
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
${RMDIR} ${DOXYGEN_DIR}/html
|
${RMDIR} ${DOXYGEN_DIR}/html
|
||||||
|
|
||||||
|
setup: tools_setup modules_setup products_setup
|
||||||
|
|
||||||
|
tools_setup:
|
||||||
|
${BOOST_DIR}/${BOOST_VERSION}/bin/install.sh
|
||||||
|
${LIBXMLXX_DIR}/${LIBXMLXX_VERSION}/bin/install.sh
|
||||||
|
${CXXUNIT_DIR}/${CXXUNIT_VERSION}/bin/install.sh
|
||||||
|
${LIBODBCXX_DIR}/${LIBODBCXX_VERSION}/bin/install.sh
|
||||||
|
${XMLRPCXX_DIR}/${XMLRPCXX_VERSION}/bin/install.sh
|
||||||
|
|
||||||
|
modules_setup:
|
||||||
|
${CORE_DIR}/bin/autogen.sh
|
||||||
|
${DB_DIR}/bin/autogen.sh
|
||||||
|
${STORAGE_DIR}/bin/autogen.sh
|
||||||
|
|
||||||
|
products_setup:
|
||||||
|
${SCHEDULER_DIR}/bin/autogen.sh
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,96 @@
|
||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta content="text/html; charset=UTF-8" http-equiv="content-type">
|
||||||
|
<title>Getting started with the LiveSupport development environment</title>
|
||||||
|
<meta content="$Author: maroy $" name="author">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Preface</h1>
|
||||||
|
This document is part of the <a href="http://livesupport.campware.org/">LiveSupport</a>
|
||||||
|
project, Copyright © 2004 <a href="http://www.mdlf.org/">Media
|
||||||
|
Development Loan Fund</a>, under the GNU <a
|
||||||
|
href="http://www.gnu.org/licenses/gpl.html">GPL</a>.<br>
|
||||||
|
<ul>
|
||||||
|
<li>Author: $Author: maroy $</li>
|
||||||
|
<li>Version: $Revision: 1.1 $</li>
|
||||||
|
<li>Location: $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/doc/gettingStarted.html,v $</li>
|
||||||
|
</ul>
|
||||||
|
<h1>Scope</h1>
|
||||||
|
This document describes how to set up the LiveSupport development
|
||||||
|
environment.<br>
|
||||||
|
<h1>Introduction</h1>
|
||||||
|
LiveSupport uses a well-defined <a
|
||||||
|
href="developmentEnvironment/index.html">development environment</a>.
|
||||||
|
Most of the LiveSupport-specific files are included in the version
|
||||||
|
control system, but some preparation and setup has to be made on system
|
||||||
|
used to develop LiveSupport as well.<br>
|
||||||
|
<h1>Steps<br>
|
||||||
|
</h1>
|
||||||
|
The following steps need to be taken for setting up the LiveSupport
|
||||||
|
development environment.<br>
|
||||||
|
<ul>
|
||||||
|
<li>set up additional system resources</li>
|
||||||
|
<li>check out the sources</li>
|
||||||
|
<li>set up tools used by LiveSupport</li>
|
||||||
|
</ul>
|
||||||
|
<h2>Set up additional system resources</h2>
|
||||||
|
The LiveSupport development environment uses some system resources,
|
||||||
|
that are not reasonable to include in the environment itself. One such
|
||||||
|
resource is an ODBC datasource to a test database. This
|
||||||
|
database has to be accessible for executing the test suits and
|
||||||
|
applications within the LiveSupport development environment.<br>
|
||||||
|
<br>
|
||||||
|
More specifically, LiveSupport expects a <a
|
||||||
|
href="http://www.postgresql.org/">PostgreSQL</a> database, and an ODBC
|
||||||
|
Data Source accessible to it through <a href="http://www.unixodbc.org/">unixODBC</a>.
|
||||||
|
Please refer to the documentation of these tools to set them up.<br>
|
||||||
|
<br>
|
||||||
|
LiveSupport expects an ODBC Data Source with the following parameters:<br>
|
||||||
|
<ul>
|
||||||
|
<li>DSN: <code>LiveSupport-test</code></li>
|
||||||
|
<li>username: <code>test</code></li>
|
||||||
|
<li>password: <code>test</code></li>
|
||||||
|
</ul>
|
||||||
|
This data source should point to a PostgreSQL instance. Only one
|
||||||
|
developer at the time should access this datasource, as the test suites
|
||||||
|
regularly create and destroy database tables.<br>
|
||||||
|
<h2>Check out the sources</h2>
|
||||||
|
The LiveSupport development directory tree can be accessed via
|
||||||
|
anonymous <a href="https://www.cvshome.org/">CVS</a>, using the
|
||||||
|
CVSROOT <code>:pserver:anonymous@netfinity-5.mdlf.org/home/cvs</code>.
|
||||||
|
The repository is called livesupport, thus the following CVS command
|
||||||
|
would check out the development tree:<br>
|
||||||
|
<pre><code><br>cvs -z3 -d </code><code>:pserver:anonymous@netfinity-5.mdlf.org/home/cvs checkout livesupport<br><br></code></pre>
|
||||||
|
This will check out and create the LiveSupport development <a
|
||||||
|
href="developmentEnvironment/directoryStructure.html">directory
|
||||||
|
structure</a>.<br>
|
||||||
|
<h2>Set up tools</h2>
|
||||||
|
LiveSupport uses widely available tools for development, like the GNU
|
||||||
|
C++ compiler, but also uses more specific tools. As these tools, or the
|
||||||
|
exact versions of these tools are not expected to be installed on the
|
||||||
|
development system, the LiveSupport development environment contains
|
||||||
|
them. The tools are installed into the <code>livesupport/usr</code>
|
||||||
|
directory, as described in the directory structure document.<br>
|
||||||
|
<br>
|
||||||
|
Moreover, some components in livesupport have to be set up prior to
|
||||||
|
compilation, for example running autoconf or similar configuration
|
||||||
|
programs. This ensures that the components compile fine on the
|
||||||
|
development system.<br>
|
||||||
|
<br>
|
||||||
|
To achieve all these goals, invoke the target <code>setup</code> in
|
||||||
|
the main <code>Makefile</code>, at the root of the LiveSupport
|
||||||
|
directory structure, by issuing the following command in the
|
||||||
|
livesupport directory:<br>
|
||||||
|
<pre><code><br>cd livesupport<br>make setup<br><br></code></pre>
|
||||||
|
The execution of this command will take a while, as all the supporting
|
||||||
|
libraries and tools are compiled and installed to the <code>livesupport/usr</code>
|
||||||
|
directory. Please note that nothing is installed outside of the
|
||||||
|
LiveSupport directory structure.<br>
|
||||||
|
<h1>Ready to roll</h1>
|
||||||
|
With the above steps completed, the LiveSupport modules and products
|
||||||
|
are ready to be compiled and developed further. Have fun!<br>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
Reference in New Issue