News | About | Get Frugalware | Packages | Documentation | Discussion Forums | Bug Tracker | Wiki | Community | Development

FrugalBuild cmake (Français)

From FrugalWiki

Jump to: navigation, search

Contents

FrugalBuild dans le cas d'une compilation avec Cmake

Il existe des logiciels qui utilisent cmake pour être compilé. Par exemple, c'est le cas de openastromenace. Voici son FrugalBuild de la version 1.2.0

 # Compiling Time: 0.09 SBU
 # Maintainer: none
 # Contributor: jedifox <j3d1f0x@free.fr>

 pkgname=openastromenace
 pkgver=1.2.0
 pkgrel=1
 pkgdesc="Hardcore 3D space shooter with spaceship upgrade possibilities"
 _F_sourceforge_name="openamenace-src"
 _F_sourceforge_broken_up2date="1"
 _F_sourceforge_ext=".tar.bz2"
 _F_sourceforge_dirname="$pkgname"
 Finclude sourceforge
 _F_cd_path="OpenAstroMenaceSVN"
 rodepends=('openastromenace-data=1.2.0' 'openastromenace-en=1.2.0')
 makedepends=('cmake')
 depends=('sdl' 'libjpeg' 'mesa' 'libsm' 'freealut' 'libvorbis' 'libstdc++')
 source=($source $pkgname.png)
 groups=('games-extra')
 archs=('i686')
 Finclude cmake
 sha1sums=('135a235cc35130edd3808c88fac202c57e8aafbf' \
         'b9435d1a898d2c0fd5e00b3e2fb39e2a2aa666e8')
 _F_desktop_name="Open Astro Menace"
 _F_desktop_icon="$pkgname.png"
 _F_desktop_categories="Game;Arcade;"
 build()
 {
 	  #compil
 	  Fcd
 	  CMake_make
  
 	  #install
 	  #Fdocrel ReadMe.txt gpl-3.0.txt License.txt
 	  Ficon $pkgname.png
 	  Fmkdir usr/share/games/$pkgname
 	  Finstallrel 755 AstroMenace usr/share/games/$pkgname
 	  Fwrapper "cd /usr/share/games/openastromenace && ./AstroMenace" openastromenace
 
 	  #install entries
 	  Fdesktop2
 }
 # optimization OK

Utilisation

Comme vous pourrez le remarquer dans le FrugalBuild, il y a deux commandes pour cmake mais en fait, il y en a plus. Ce n'était qu'un exemple. Ici, nous allons lister les différentes commandes et expliquer leur utilisation.

Pour pouvoir utiliser ces options, il faut obligatoirement mettre Finclude cmake dans le FrugalBuild. Sinon, ça ne fonctionnera pas. Et ne pas oublier de mettre cmake dans makedepends()

Liste des options

Les options ne se mettent pas dans la partie build() mais doivent quand même se trouver au-dessus de Finclude cmake pour être pris en compte. Comme vous pouvez le voir dans le FrugalBuild, elles ne sont pas obligatoire mais peuvent être utile. Cependant, si elles ne sont pas mise, la valeur par défaut sera utilisée.

Nom de l'option Valeur par défaut Description
_F_cmake_type None Il est possible de choisir comme valeur : Debug, Debugfull, Release, Relwithdebinfo
_F_cmake_verbose True Valeurs possibles : True ou False. Permet d'afficher ou non le déroulement de la compilation
_F_cmake_color Off Valeurs possibles : ON ou OFF. Permet d'afficher de la couleur ?
_F_cmake_confopts aucune valeur A utiliser comme Fconfopts


Les fonctions sont utilisées dans la partie build()

. Nom de la fonction Description
CMake_conf C'est le “configure” de cmake
CMake_prepare_build Lance Fpatchall et prépare le répertoire de construction utilisé par cmake
CMake_make Appelle CMake_prepare_build, CMake_conf et lance make
CMake_build Wrapper de build
build Appelle CMake_build


Manuel

Pour voir le manuel, il suffit de taper dans une console :

User terminal 48px.png
$ man cmake.sh
Personal tools
Namespaces
Variants
Actions