Changes between Version 5 and Version 6 of HowtoCDBS
- Timestamp:
- Jun 12, 2009, 5:29:01 AM (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
HowtoCDBS
v5 v6 13 13 == Hands on ! == 14 14 15 On this example we will create a debian package for '''enna''' , first of all, create the directory ''debian'' (if is already created and has files mean that is already ready for create debian packages, or supposed to... in any case, if is created, just remove it in order to follow this howto).15 On this example we will create a debian package for '''enna''' under a Elive system 16 16 17 On it, you need to have 2 files, '''control.in''' and '''rules''' 17 Download the sources of enna and create the directory ''debian'' (if is already created and has files mean that is already ready for create debian packages, or supposed to... in any case, if is created, just remove it in order to follow this howto). 18 18 19 In the '''debian/control.in''' file has the description of the package, we can fill up with something like: 19 On it, you need to have 2 files, '''control''' and '''rules''' 20 21 In the '''debian/control''' file has the description of the package, we can fill up with something like: 20 22 {{{ 21 23 Source: enna … … 23 25 Priority: optional 24 26 Maintainer: yourname <youremail@email.com> 25 Build-Depends: @cdbs@, libplayer, gettext, libsqlite3-dev27 Build-Depends: cdbs, autotools-dev, gnulib, debhelper, libplayer, gettext, libsqlite3-dev, lubcurl4-gnutls-dev, libdbus-1-dev, libx11-dev, libxml2-dev, libfreetype6-dev, libjpeg62-dev 26 28 27 29 Package: enna 28 30 Architecture: any 29 Depends: libcddb2, libcurl3, libdbus-1-3, libexif12, libhal-storage1, libhal1, libplayer, libsqlite3-0, libxml2, lightmediascanner, libxrandr231 Depends: efl-all, libcddb2, libexif12, libhal-storage1, libhal1, libplayer, libsqlite3-0, libxml2, lightmediascanner, libxrandr2 30 32 Description: enna media player 31 33 This is the enna media player using EFL 32 34 }}} 35 36 Note: These dependencies are a bit tricky here, the efl-all package will contain all the libs of EFL, but there's no a efl-all-dev package that will contain the rest of dependencies like libdbus, libcurl, libfreetype, etc, so just play with your own dependencies for your packages 33 37 34 38 The first block is for the source packages (so that you can ''apt-get source enna'' in the future in order to recompile it), it also contains the information about which dependencies you need to have in order to compile it. The second block is for the binary end package. … … 56 60 '''WARNING''': It is very important that the changelog will have the CORRECT information or you can have problems by compiling the package, for example your PACKAGENAME needs to NOT be uppercase, etc, you can see examples in ''ls /usr/share/doc/*/changelog.Debian.gz'' 57 61 58 Also, you need the ''real'' control file, control.in is a kind of base, for generate the ''real'' control file we just run '''fakeroot debian/rules clean''' and we have it :)59 62 60 63 Your ''debian'' directory is ready, you can add a lot more of options and tricks for your package but for that, just follow the official documentation at /usr/share/doc/cdbs, im not going to write all the features because im lazy too :) … … 85 88 86 89 You can see some nice and small examples of CDBS in the EFL svn, for example in evas, it use it for build the packages (at least to the date of today) 87 88 This Howto is tested step by step on a clean Elive system, live mode, version (1.9.29), the package builds without problems :)