Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Marc-Antoine ARNAUD
committed
Jan 5, 2012
1 parent
5642052
commit 80bc526
Showing
34 changed files
with
3,599 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# temporary files | ||
*~ | ||
.*.swp # vim | ||
*.flc # xemacs | ||
.DS_Store # MacOS | ||
Thumbs.db # Windows | ||
|
||
|
||
# removing dist folder : folder receiving the compilation products | ||
/dist | ||
/.build | ||
|
||
/python/sequenceParser.py | ||
/python/sequenceParser_wrap.cxx |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
sequenceParser - install HOWTO | ||
|
||
|
||
Why Boost.Build ? | ||
================= | ||
|
||
sequenceParser relies heavily on the Boost library, so instead of using one of | ||
the many multiplatform build system available like Scons, CMake, Autotools | ||
we're simply using Boost.Build, the build system embedded within Boost. | ||
|
||
Boost.Build is powerful yet very expressive and terse. It's a weapon of | ||
choice when building large pieces of code with a lot of dependencies. | ||
|
||
An excellent introduction to Boost.Build can be found here | ||
http://www.highscore.de/cpp/boostbuild/ | ||
|
||
And the official documentation is available online | ||
http://www.boost.org/boost-build2/doc/html/ | ||
or in your boost copy at $(BOOST_ROOT)/tools/build/index.html | ||
|
||
|
||
Setting up the build process | ||
============================ | ||
|
||
* Building the building tool (the build-ception...) | ||
|
||
- First grab Boost from the website ( http://www.boost.org/ ) | ||
- Uncompress the archive somewhere. | ||
- Open a terminal and go to the boost root folder, then type | ||
Linux / MacOsX : ./bootstrap.sh | ||
Windows : bootstrap.bat | ||
|
||
This will generate a 'b2' executable. | ||
|
||
* Setting up environment variables | ||
|
||
In order to use Boost.Build you have to set the BOOST_ROOT | ||
environment variable. | ||
|
||
Linux / MacOsX : export BOOST_ROOT=/your/path/to/boost/root | ||
Windows : set BOOST_ROOT=C:\your\path\to\boost\root | ||
|
||
Note : You can add it to your ~/.bashrc, ~/.profile | ||
or to your Windows environment to make it persistent. | ||
|
||
|
||
Building | ||
======== | ||
|
||
* Choose the appropriate script depending on your platform | ||
Linux : ./build-linux-gcc.sh | ||
MacOSX : comming soon | ||
Windows : comming soon | ||
|
||
* Run it with one or more of the following command line arguments | ||
--help : Display help message | ||
--clean : Remove targets instead of building | ||
variant=release : build the release version ( by default is the debug version ) | ||
|
||
: without argument, full build & installation (without unit test) | ||
sequenceLibrary : Build only the C++ library | ||
test : Build & run unit test suite | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,83 @@ | ||
|
||
import type ; | ||
|
||
local BOOST_ROOT = [ modules.peek : BOOST_ROOT ] ; | ||
|
||
use-project /boost : $(BOOST_ROOT) ; | ||
use-project /test : test ; | ||
|
||
if ! [ type.registered BINDINGPYTHON ] | ||
{ | ||
type.register BINDINGPYTHON : : SHARED_LIB ; | ||
type.change-generated-target-prefix BINDINGPYTHON : : "_" ; | ||
} | ||
|
||
project | ||
: requirements | ||
<include>src | ||
<include>include | ||
<library>/boost//system | ||
<library>/boost//filesystem | ||
<library>/boost//regex | ||
: usage-requirements | ||
<include>include | ||
<library>/boost//system | ||
<library>/boost//filesystem | ||
<library>/boost//regex | ||
: | ||
build-dir .build/ | ||
; | ||
|
||
lib sequence | ||
: | ||
[ glob src/*.cpp ] | ||
; | ||
|
||
make buildBindingSwig : python/sequenceParser.i : @swigCpptoPython ; | ||
actions swigCpptoPython | ||
{ | ||
swig -c++ -python -I. $(>) | ||
} | ||
|
||
bindingpython sequenceParser | ||
: | ||
[ glob python/*.cxx ] | ||
sequence | ||
/python | ||
: | ||
<include>. | ||
; | ||
|
||
install sequenceLibrary | ||
: | ||
sequence | ||
: | ||
<install-dependencies>on | ||
<install-type>SHARED_LIB | ||
<variant>debug:<location>dist/debug | ||
<variant>release:<location>dist/release | ||
; | ||
|
||
install bindingPython | ||
: | ||
[ glob python/sequenceParser.py ] | ||
: | ||
<variant>debug:<location>dist/debug | ||
<variant>release:<location>dist/release | ||
; | ||
|
||
install bindingPythonLibrary | ||
: | ||
sequenceParser | ||
: | ||
<variant>debug:<location>dist/debug | ||
<variant>release:<location>dist/release | ||
<install-dependencies>off | ||
<install-type>BINDINGPYTHON | ||
|
||
; | ||
|
||
|
||
|
||
|
||
explicit test ; |
Oops, something went wrong.