Référence des options de make

La commande make est utilisée à l'intérieur du dépôt Gaia pour créer un profil qui peut être chargé vers un appareil ou être lancé dans une version de B2G Desktop. Cet article illustre en détail les différentes options pour make.

Note : De nombreuses variables d'environnement sont utilisées dans le fichier Makefile. Celles-ci pouvant être supprimées à l'avenir, attention à ne pas construire d'outils qui reposeraient sur ces variables.

Les profils créés sont généralement enregistrés à la racine du répertoire de Gaia, par exemple /gaia/profil. Un profil contient généralement les éléments suivants :

  • defaults/ : Le répertoire qui contient les paramètres par défaut qui sont utilisés lors que le téléphone est réinitialisé.
  • extensions/ : Le répertoire qui contient les extensions.
  • settings.json : Le fichier de paramètres.
  • user.js : Une autre fichier qui contient les paramètres utilisateurs (autrement appelés préférences).
  • webapps/ : Le répertoire qui contient l'ensemble des applications web à installer sur le téléphone.

Note : Lorsque vous souhaitez construire un nouveau profil après en avoir déjà construit un, vous devez supprimer le profil existant au préalable.

Utilisation par défaut

make

Cette commande créera une version neutre de Gaia, qui ne peut pas être utilisée pour le débogage. Pour construire une version avec une certaine marque, vous devrez utiliser Official Mozilla branding make ; pour construire une version de débogage, vous devrez utiliser Debug make.

Envoyer vers l'appareil

make install-gaia

make reset-gaia

Une fois ADB (Android Debug Bridge) paramétré, ces « cibles » de make enverront Gaia sur l'appareil. install-gaia enverra uniquement les mises à jour depuis le répertoire de travail alors que reset-gaia nettoiera l'ensemble des configurations, profils, applications web et données en base avant d'envoyer Gaia sur l'appareil (cela créera une nouvelle base de données pour les réglages).

Note : Lorsque les commandes make install-gaia / make reset-gaia sont utilisées, Gaia est envoyée vers le téléphone avec une résolution par défaut qui est celle des ressources utilisées (1x). Pour définir un niveau de définition plus élevé, vous devrez utiliser les options GAIA_DEV_PIXELS_PER_PX ou GAIA_DPPX (voir le paragraphe Images en haute résolution pour plus de détails sur ces options.). Lorsque vous envoyez Gaia sur votre appareil de cette façon, il est nécessaire de préciser (en plus des options des autres options de make) le facteur de forme de l'appareil. Ainsi pour un Flame, on aura make install-gaia GAIA_DEV_PIXELS_PER_PX=1.5 (ou 2, ou 2.5, etc.). Pour plus d'informations, voir le tableau des facteurs de forme dans l'article icônes de 512 pixels pour l'affichage sur l'appareil.

Construire des applications spécifiques

APP=system make

APP=system make install-gaia

Lorsqu'un profil existe déjà, l'option APP vous permet de spécifier les applications à réempaqueter plutôt que de réempaqueter puis de réenvoyer toutes les applications sur l'appareil. On notera que, bien que cette commande envoie le nouveau paquet de l'application ainsi que le manifeste, les changements du manifeste (ex. : les nouvelles permissions ou les agencements de clavier) ne sont pas détectés par Gecko.

Définir un répertoire spécifique pour le profil

Vous pouvez définir un répertoire spécifique dans lequel construire votre profil en utilisant l'option PROFILE_FOLDER. Par exemple :

PROFILE_FOLDER=profile-b2g-desktop make

Construire pour les différents types d'appareil

Il existe des options pour spécifier le type d'appareil visé.

Construire une version de Gaia pour téléphone

GAIA_DEVICE_TYPE=phone make

Les applications pour cette versions seront celles de la liste /gaia/build/config/phone/apps-engineering.list.

Construire une version de Gaia pour tablette

GAIA_DEVICE_TYPE=tablet make

Les applications utilisées pour la construction seront celles de la liste /gaia/build/config/tablet/apps-engineering.list.

Créer une version spark de Gaia

GAIA_DISTRIBUTION_DIR=distros/spark make reset-gaia

Installe spark sur votre appareil. L'option du build.sh de B2G est celle-ci :

GAIA_DISTRIBUTION_DIR=distros/spark ./build.sh

Les différents types de version

make dispose d'options pour préciser le type de version qu'on souhaite construire (chaque type de version ayant un objectif distinct) :

Version de production

PRODUCTION=1 make

Cette instruction crée une version de production de Gaia. Cela signifie que :

  • Les applications de Gaia sont empaquetées, ce qui les rend plus difficile à déboguer mais ce qui permet la meilleure gestion des permissions d'API, etc.
  • Les applications de test ne sont pas intégrées à cette version
  • Par défaut, le débogage à distance est désactivé
  • L'écran de déverrouillage est activé (ce qui entraînera une coupure des connexions USB en cours)
  • Marionette est désactivé
  • L'écran de première utilisation est activé
  • Le cache hors ligne est activé.

Note : Pour cette instruction, vous pouvez également utiliser l'alias make production.

Version de débogage

DEBUG=1 make

La variable DEBUG permet de lancer Gaia avec des applications hébergées sur un serveur web intégré accessible sur le port GAIA_PORT, plutôt que les applications soient empaquetés et aient besoin d'être réempaquetés à chaque modification. Cela permet de tester plus facilement. Si vous lancez ce profil avec une version de Firefox Nightly, vous pourrez utiliser une version spécifique des outils de développement adaptée à B2G.

De plus :

  • Les applications de tests sont inclues dans la version construite
  • Le débogage à distance est activé par déafut
  • L'écran de verrouillage est désactivé (les connexions USB ne seront pas interrompues)
  • Marionette est activé, ce qui permet de lancer les tests unitaires de Gaia
  • L'écran de première utilisation est désactivé
  • Le cache hors ligne n'est pas activé, même s'il est généré.

A noter: Il y a un bogue ouvert (bug 1180103) lors de l'utilisation de profils debogage Gaia, provoque l'affichage d'un écran d'accueil vide quand il est lancé au travers de Firefox OS Simulator (ou WebIDE, ou autre.) Cela peut être contourné en construisant avec DEBUG=1 DESKTOP=0 make à la place (voir Version_de_débogage_pour_l'appareil.)

Version de débogage pour l'appareil

DEVICE_DEBUG=1 make

Cela désactive l'écran de déverrouillage et active le débogage via les outils ADB, ce qui permet de déboguer ce qui se passe sur l'appareil.

Dans Firefox OS > 1.2, il faut préciser ce paramètre si vous voulez déboguer des applications web dans le WebIDE.

Version de débogage sur ordinateur

DEBUG=1 DESKTOP=0 make

Cette option permet de créer une version de débug pour ordinateur, à utiliser avec B2G pour ordinateur (B2G desktop).

Version officielle de Mozilla

MOZILLA_OFFICIAL=1 make

Cette option permet de construire une version officielle de Mozilla.

Version pour l'utilisation en test(dogfood)

DOGFOOD=1 make

Les options et utilitaires liés à une utilisation à des fins de tests sont activés. Par exemple, l'application sur les retours/informations d'utilisation (feedback) sera activée.

Version pour les applications système

B2G_SYSTEM_APPS=1 make

Cette variable d'environnement vous permet d'envoyer une application sur /system/b2g plutôt que sur /data/local. Vous devriez utiliser cette option lorsque vous travaillez sur une version utilisateur. Cette variable est définie automatiquement lorsque vous utilisez la commande make production. Cette variable peut également être utilisée avec install-gaia ou reset-gaia.

Personnaliser et distribuer une version

GAIA_DISTRIBUTION_DIR=./dir

Note : Lire l'article Construire une version de Gaia customisée pour plus d'informations.

Les options pour le débogage/développement

Certaines options de make permettent d'activer/désactiver des fonctionnalités de débogage ou de modifier des réglages utiles pour le développement.

Activer le débogage à distance

REMOTE_DEBUGGER=1

Cela permet d'utiliser le débogage à distance pour l'appareil. Cela aura le même effet que d'activer l'option dans les options de développement.

Version avec optimisation du JavaScript

GAIA_OPTIMIZE=1 make

Cette option déclenche un processus d'optimisation sur le code JavaScript utilisé pour Gaia qui consiste à concaténer/compresser les fichiers. Cette option est automatiquement utilisée avec make production. Cette option peut également être utilisée avec install-gaia ou reset-gaia.

Ressources images en haute résolution

GAIA_DEV_PIXELS_PER_PX=1.5 make

Ou, en utilisant l'alias :

GAIA_DPPX=1.5 make

Lors de l'empaquetage de l'application, cette option remplacera les images par leurs équivalents *@1.5x.(gif|jpg|png) si ces fichiers existent. Vous aurez besoin d'utiliser l'option ci-dessus au sein d'une commande make standard, par exemple :

GAIA_DEV_PIXELS_PER_PX=1.5 make reset-gaia

GAIA_DEV_PIXELS_PER_PX=1.5 make install-gaia

Pour information, voici la liste des résolutions d'écran actuellement ciblées par Gaia :

  • qHD: ~540×960; device pixel ratio = 1.6875
  • WVGA: ~480×800; device pixel ratio = 1.5
  • HBGA (320x240); device pixel ratio = 1

Utilisez l'option GAIA_DEV_PIXELS_PER_PX pour être sûr que les images s'affichent correctement sur les appareils qHD et WVGA. Voir l'article un pixel n'est pas un pixel pour plus d'informations sur les pixels physiques et les pixels CSS.

Lancer les tests d'intégration

Vous pouvez lancer les tests d'intégration de Gaia en utilisant make. Voir Gaia integration tests pour plus de détails.

Lancer les tests de performance Raptor

Vous devez effectuer une configuration permettant de lancer les tests Raptor sur votre périphérique, avant de lancer les tests. Voir Raptor pour plus de détails.

make raptor

Profil pour les appareils avec peu de mémoire

GAIA_MEMORY_PROFILE=low make

Cette variable permet de générer un profil de Gaia qui utilise peu de mémoire. Cela permet de construire un profil adapté aux appareils avec peu de mémoire comme le Tarako.

Désactiver l'écran de première utilisation (first time use experience - FTU)

NOFTU=1

Cette variable d'environnement permet de désactiver l'écran affiché lors de la première utilisation.

Désactiver l'écran de dé/verrouillage

Vous pouvez désactiver l'écran qui verrouille l'appareil en utilisant l'option NO_LOCK_SCREEN. Par exemple :

NO_LOCK_SCREEN=1 make

La montée en charge pour le volume de données

Plusieurs volumes de données de référence ont été créés pour permettre aux développeurs et aux testeurs d'installer rapidement un grand volume de données utilisées par plusieurs applications (généralement ce chargement a lieu sur un appareil nouvellement flashé).

Les commandes suivantes permettent de charger différents volumes (à lancer depuis le répertoire de Gaia) :

make reference-workload-light
  • 200 contacts
  • 200 sms
  • 50 entrées dans l'historique d'appel
  • 20 images dans la galerie
  • 20 chansons
  • 5 vidéos
make reference-workload-medium
  • 500 contacts
  • 500 sms
  • 100 entrées dans l'historique d'appel
  • 50 images dans la galerie
  • 50 chansons
  • 10 vidéos
make reference-workload-heavy
  • 1000 contacts
  • 1000 sms
  • 200 entrées dans l'historique d'appel
  • 100 images dans la galerie
  • 100 chansons
  • 20 vidéos
make reference-workload-x-heavy
  • 2000 contacts
  • 2000 sms
  • 500 entrées dans l'historique d'appel
  • 250 images dans la galerie
  • 250 chansons
  • 50 vidéos

Ces cibles peuvent être utilisées avec la variable d'environnement APP ou avec la variable APPS (contenant des noms d'applications, séparés par des espaces). Par exemple :

APP=sms make reference-workload-light
APPS="sms communications/contacts" make reference-workload-heavy

Les applications utilisables ici sont :

APPS="gallery music video communications/contacts sms communications/dialer"

Pour installer des fichiers de musique dans la charge de données, vous devez avoir installé mid3v2. Cet utilitaire peut être installé avec la commande suivante :

sudo apt-get install python-mutagen

Si vous utilisez Fedora ou RHEL, vous pouvez utiliser :

sudo yum install python-mutagen

Construire la documentation

La documentation relative à Gaia peut être construite grâce à jsdoc3. Pour générer la documentation, vous pouvez utiliser la commande suivante :

make docs

Activation des agencements de claviers et des dictionnaires

Pour activer les agencements de clavier et les dictionnaires liés au moteur de saisie (IME pour Input Method Editor en anglais), vous pouvez utiliser la commande suivante :

GAIA_KEYBOARD_LAYOUTS=en,zh-Hant-Zhuyin,el,de,fr,zh-Hans-Pinyin make

Actuellement, tous les claviers ne sont pas chargés par défaut en raison de problèmes d'espace disque. bug 1029951 est en cours de résolution pour permettre de découpler les agencements et les dictionnaires (pour permettre aux utilisateurs de télécharger le dictionnaire).

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : jwhitlock, sousmangoosta, SphinxKnight
 Dernière mise à jour par : jwhitlock,