Welcome to little lamb

Code » comain » release » tree

[release] / meta / README.git

If you're reading this, chances are you just cloned the git repository of some
lila software. Congratulations! :)

Now unlike with the tarball of a release, you're not quite ready to go, there
are a few steps required in order to get things good to go :

1. First, you need the component *comain* in order to continue. This will
   provide scripts and other files needed for configure, etc

   You can simply run `make` to have comain's repo cloned and checked out at
   the right version for you. If you'd rather do it yourself, or get a release
   tarball, go ahead.
   The minimum version needed can be found in meta/deps/comain/version

2. Once comain is there, if you haven't already you can run `make` to create
   needed symlinks such as `configure` or `common.mk`

3. Good, but there might be other components needed to build this software.
   Worry not, comain can help you and set them all up for you. To do so, simply
   run `comain/getdeps cpnt`

   Each components will then be cloned and checked out as needed. Should you
   want to do so manually, you can instead run `comain/getdeps list` and it will
   only list all required components and their minimum version.
   As an added bonus, it will also list dependencies.

   If you just want to see what would happen, an option `--dry-run` (or `-n`)
   can be used, e.g: `comain/getdeps -n cpnt`

4. Now that components are all set up, there might be dependencies as well -
   that is, libraries needed to build the software.

   As a way to help, it is possible to use them in so-called "internal" mode,
   which simply means instead of installing the library into the system, you can
   just put it in the `deps` folder.
   Of course, you'll need to build it as well. By default such "internal"
   dependencies are linked statically, so only building static libraries is
   enough.

   Once again, a little helper might come in handy: `comain/getdeps deps` will
   do for libraries what it did for components : clone their repos into `deps`
   and checking the needed branch/tag.
   Except that it does so recursively, so all dependencies of the dependencies
   will also be cloned.

   Additionally, you can then have them all built using `comain/blddeps`
   Note that it does so recursively, so all dependencies of the dependencies
   will also be built, assuming it is available in the `deps` folder of course.

5. That's it, finally you're ready! You can now use `./configure` and `make` as
   usual.