README 3.27 KB
Newer Older
1 2 3 4 5
***********
Description
***********

cerbero is a multi-platform build system for Open Source projects that builds
6
and creates native packages for different platforms, architectures and distributions.
7 8 9 10 11 12 13 14 15 16 17

Projects are defined using recipes files (.recipe), which provides a description
of the project being built such as name, version, licenses, sources and the way
it's built. It also provide listing of files, which is later used for the packaging.

Packages are defined using packages files (.package), describing the package name,
version, license, maintainer and other fields used to create the packages. A
package wraps a list of recipes, from which the list of files belonging to the
package will be extracted.


Andoni Morales Alastruey's avatar
Andoni Morales Alastruey committed
18
********************
19
Minimum Requirements
Andoni Morales Alastruey's avatar
Andoni Morales Alastruey committed
20
********************
21 22 23 24 25 26

cerbero provides bootstrapping facilities for all platforms, but it still needs a
minimum base to bootstrap

Linux
-----
Andoni Morales Alastruey's avatar
Andoni Morales Alastruey committed
27
On linux, you will only need a distribution with python >= 2.6 and python's argparse module,
28 29 30 31
which is already included in python2.7

OSX
---
32 33
On OSX you will need to have install the following software:
  * XCode
34
  * CMake: http://www.cmake.org/cmake/resources/software.html
35 36 37

Windows
-------
38
The initial setup on Windows is a little bit longer, but only a few programs are required.
39 40 41 42 43 44 45
  * Python2.7: https://www.python.org/downloads/
     IMPORTANT : Chose the 2.7 version. The 3.x versions are *not* supported
  * CMake: http://www.cmake.org/cmake/resources/software.html
  * Git: http://git-scm.com/download/win
     IMPORTANT: Select the install option "Checkout as-is, Commit as-is"
  * Msys/MinGW: http://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download
     Install it with all the options enabled
46
  * WiX 3.5: http://wix.codeplex.com/releases/view/60102
47

48 49
The Direct Show plugins still needs to be built using Microsoft's compiler and their SDK,
due to the dependency on the Direct Show base classes.
50
You need to install the following software:
51
  * Microsoft SDK 7.1: http://www.microsoft.com/en-us/download/details.aspx?id=8279
52 53
  * Windows Driver Kit 7.1.0: http://msdn.microsoft.com/en-us/windows/hardware/hh852365

54
cerbero must be run in the MingGW shell, which is accessible from the main menu.
55
The last step is making python and git available from the shell, for which you will need
56
to create a .profile file:
57 58
  $ echo "export PATH=\"\$PATH:/c/Python27:/c/Git/bin\"" > ~/.profile

59
Note that inside the shell, / is mapped to c:\Mingw\msys\1.0\
60 61 62 63 64 65 66 67


*****
Usage
*****

Bootstrap
---------
Andoni Morales Alastruey's avatar
Andoni Morales Alastruey committed
68
Before using cerbero for the first time, you will need to run the bootstrap command.
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
This command installs the missing parts of the build system using the packages manager
when available.
  $ cerbero bootstrap

Help
----
  $ cerbero --help

List available recipes
----------------------
  $ cerbero list

List available packages
-----------------------
  $ cerbero list-packages

Build a recipe
--------------
  $ cerbero build gtk+

Rebuild a single recipe
-----------------------
  $ cerbero buildone gtk+

Clean a recipe
--------------
  $ cerbero cleanone gtk+

Create a package
----------------
99
  $ cerbero package gstreamer-1.0
100 101 102


*******
Andoni Morales Alastruey's avatar
Andoni Morales Alastruey committed
103
License
104 105 106 107 108 109 110 111 112 113 114
*******

cerbero is released under the GNU Lesser General Public License, Version 2.1 (LGPLv2.1)


************
Dependencies
************

 * python >= 2.6
 * python-argparse