Development |
| Submitted by ntd on Wed, 2009-08-12 13:52 |
Table of Contents
- 1.1. Git
- 2.1. SVN Layout
- 3.1. Ours
- 3.2. Third Party
- 4.1. Building Individual Packages
- 4.2. Installing Packages and Dependencies
- 4.3. Rebuilding All Packages
Rules
- Packages placed in apt must always work, and work together.
- Code in SVN must build against the the make-common version in apt.
- Code in SVN trunks should probably work (if possible).
Git
Git tips and setup.
HTTPS setup (only for authenticated access):
The SSL certificate is used by your git client to verify that it is actually talking to the real thebrain.golems.org.
- Download the SSL certificate: thebrain.golems.org.crt.
- append it to ~/.gitcerts:
$ cat thebrain.golems.org.crt >> ~/.gitcerts - Tell git about the cert:
$ git config --global http.sslcainfo ~/.gitcerts
Authenticated Access
- Visit https://thebrain.golems.org/git. Passwords currently the same as your (HTTP) SVN account.
- Clone things with ie:
git clone https://username@thebrain.golems.org/git/lib/ach
Anonymous Access
- Visit http://thebrain.golems.org/git.
- Clone things with ie:
git clone http://thebrain.golems.org/git/ach
These 80 repos are annoying to manage!
Yeah, here's some help:
- Make your
~/.netrcfile look like this:
machine thebrain.golems.org
login USERNAME
password SUPER_SECRET
- Now install this helper by:
$ mkdir ~/git
$ cd ~/git
$ git clone https://thebrain.golems.org/git/lib/grit
$ cd ./grit
$ ./grit install
$ cd ~/git
$ grit webclone https://thebrain.golems.org/git
$ grit help
SVN
Lab code is version controlled on our server, thebrain. If you need an account, see Pushkar, Tobias, or Neil.
- https://svn.golems.org/svn
- svn+ssh://thebrain.golems.org/home/svn/humanoids
SVN Layout
- /: SVN ROOT
- /papers/: latex for papers
- /papers/2009/: papers written in 2009
- /papers/2010/: papers written in 2010
- /papers/LatexSamples/: LaTeX sample code
- /papers/: latex for papers
Core Packages
Ours
- ach: message passing IPC
- somatic: message definitions and general utilities
- amino: utilities
- make-common: includeable makefile to simply building
Third Party
- BLAS and LAPACK: Linear algebra. You will want to use CBLAS
- Protocol Buffers: Message serialization. Please use Protobuf-C
Building and Installation
Building Individual Packages
There is a general purpose makefile under $svnroot/lib/make-common that may be included in the Makefiles for each individual project. It should greatly reduce the amount of redundant build-scripting you have to write.
Installing Packages and Dependencies
See Apt Repository.
Rebuilding All Packages
There is a top-level makefile in /src/common that will rebuild any package and its dependencies. Use it with a `make lib/somatic' or something similar.
See Also
| Attachment | Size |
|---|---|
| thebrain.golems.org_.crt_.txt | 2.04 KB |







