Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

Guia de referência para opções make

Este artigo necessita de uma revisão editorial. Como posso ajudar.

O comando make é usado no repo Gaia para criar perfis Gaia que podem ser carregados no seu dispositivo ou ser executado no B2G Desktop. Esse artigo detalha as diversas opções disponíveis.

Nota: Existem muitas variáveis de ambiente no Makefile. Não fique dependente delas, pois podem ser removidas no futuro.

Os perfis criados normalmente são criadas no diretório raiz do gaia, por exemplo /gaia/profile, e contém os seguintes itens:

  • defaults/: Diretório que contém as configurações padrão a serem recarregadas após um reset do telefone.
  • extensions/: Diretório que contém extensões.
  • settings.json: Arquivo de configuração.
  • user.js: Outro arquivo que contém mais configurações e preferências.
  • webapps/: Diretório que contém aplicativos web que serão instalados no telefone.

Nota: Quando você já fez um perfil e quer compilar um novo, você deve apagar o diretório existente do perfil antes de tentar gerar um novo.

Default

make

Simplemente gera um binário sem a marca oficial da Mozilla e sem a opção de depuração. Para compilar um binário com a marca da Mozilla você precisa usar essa opção. Para um binário de compilação, você precisa da opção de depuração.

Copia para o dispositivo

make install-gaia

make reset-gaia

Com a configuração do ADB (Android Debug Bridge) install-gaia simplesmente copia as atualizações do Gaia do seu diretório de trabalho para o dispositivo. reset-gaia apagará toda a configuração existente, os perfis, aplicativos e os dados (um novo conjunto de banco de dados será inicializado) antes de copiar o Gaia.

Compilando aplicativos específicos

APP=system make

APP=system make install-gaia

Quando um perfil já existe, APP permite que você esepcifique qual aplicativo será reempacotado, ao invés de copiar novamente todos os aplicativos Gaia.

Especificando um diretório de perfil customaizado

Você pode especificar um diretório para compilar o seu perfil, usando PROFILE_FOLDER, por exemplo:

PROFILE_FOLDER=profile-b2g-desktop make

Compilando para dispositivos diferentes

Existem algumas opções que criam binários para diferentes dispositivos, com diferentes propósitos.

Criar um binário do Gaia para telefone

GAIA_DEVICE_TYPE=phone make

Esse binário pega os aplicativos listados em /gaia/build/config/phone/apps-engineering.list.

Criar um binário do Gaia para tablet

GAIA_DEVICE_TYPE=tablet make

Esse binário pega os aplicativos listados em /gaia/build/config/tablet/apps-engineering.list.

Tipos diferentes de compilação

Opções que criam binários com diversos propósitos.

Produção

PRODUCTION=1 make

Cria um binário produtivo do Gaia:

  • Gaia é executado com os aplicativos empacotados, que é difícil de depurar, mas é a melhor forma para os aplicativos em termos de permissões de API, etc.
  • Aplicativos de testes não são incluídos no binário.
  • Depuração remota é desligada por padrão.
  • Bloqueio de tela é habilitado por default (a conexão USB é derrubada quando a tela é bloqueada).
  • Marionette está desligado.
  • A experiência de primeiro uso está habilitada.
  • É utilizado cache offline.

Nota: Você tamém pode usar o alias make production.

Depuração

DEBUG=1 make

A variável DEBUG executa o Gaia um um aplicativo hospedado num servidor interno numa porta específica (GAIA_PORT), ao invés do aplicativo empacotado que deve ser reempacotado depois de cada alteração. Isso fica fácil para realizar os testes. Lançando esse perfil com a última versão do Firefox Nightly vai lhe proporcionar bons painéis do B2G nas ferramentas de desenvolvimento do Firefox.

Adicionalmente:

  • Aplicativos de testes são incluídos no binário.
  • Depuração remota é habilitada por padrão.
  • A tela de bloqueio está desabilitada (conexões USB não serão interrompidas).
  • Marionette é habiltado, pois é utilizado para executar os testes unitários.
  • A experiência de primeiro uso é desligada.
  • O cache offline não é utlizado, mesmo se for gerado.

Depuração do dispositivo

DEVICE_DEBUG=1 make

Desabilita a tela de bloqueio no dispositivo e habilita a depuração com a ferramenta ADB, que é útil para a depuração do dispositivo.

Nas versões do Firefox OS 1.2 e superiores, especifique esse parâmetro quando você quiser depurar os aplicativos Firefox OS com o App Manager.

Depuração do B2G Desktop

DEBUG=1 DESKTOP=0 make

Cria uma versão de depuração para ser executada no B2G desktop.

Imagem da marca oficial da Mozilla

MOZILLA_OFFICIAL=1 make

Imagem de Dogfood

DOGFOOD=1 make

Nota: Dogfooding é um termo em inglês muito usado em empresas de tecnologia, que significa fazer os usuários usarem produtos e serviços da empresa.

Nessa imagem são disponibilizadas opções e utilitários para o Dogfooding. Como exemplo, temos o aplicativo Feedback que permite aos dog fooders submeter feedbacks sobre o sistema operacional.

Aplicativos do sistema

B2G_SYSTEM_APPS=1 make

A variável de ambiente permite você copiar um aplicativo para o diretório /system/b2g ao invés de /data/local. Você deve usar isso quando você trabalhar com um binário do usuário. Essa variável é automaticamente definida quando executar make production. Isso pode ser utilizado para install-gaia ou reset-gaia.

Compilação para distribuição customizada ou comercial

GAIA_DISTRIBUTION_DIR=./dir

Nota: Leia Customizações Comerciais para maiores detalhes.

Opções para desenvolvimento/depuração

Existem também opções para adicionar ou remover recursos com propósitos de depuração e suporte à programação.

Habilitar depuração remota

REMOTE_DEBUGGER=1

Habilita a depuração remota no dispositivo. Verificar o artigo Configurações para desenvolvedor.

Otimização do JavaScript

GAIA_OPTIMIZE=1 make

Habilita uma etapa no Gaia que concatena e comprime os arquivos JavaScript. Essa opção é automaticamente definida quando é executado make production. Isso pode ser utilizado para install-gaia ou reset-gaia.

Imagens de alta resolução

GAIA_DEV_PIXELS_PER_PX=1.5 make

Ou com o alias:

GAIA_DPPX=1.5 make

Ao empacotar o aplicativo, essa opção substitui as imagens com os arquivos equivalentes em *@1.5x.(gif|jpg|png) se existirem. Você precisa usar as opções abaixo como parte do comando make padrão:

GAIA_DEV_PIXELS_PER_PX=1.5 make reset-gaia

GAIA_DEV_PIXELS_PER_PX=1.5 make install-gaia

Atualmente o Gaia possui as seguintes resoluções de tela:

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

utilize GAIA_DEV_PIXELS_PER_PX para certificar-se que as imagens não apareçam deformadas nos dispostivos com telas qHD e WVGA. Veja o artigo Um pixel não é um pixel para maiores informações sobre pixels do dispositivo e pixels do CSS.

Compilação para dispositivos com pouca memória

GAIA_MEMORY_PROFILE=low make

Essa variável gera um perfil adequado para dispositivos com pouca memória, adequados para aparelhos como, por exemplo, o Tarako.

Desabilitar a Experiência de Primeiro Uso - First time use experience (FTU)

NOFTU=1

Desabilitar tela de bloqueio

Você pode desabilitar a tela de bloqueio usando a opçãoNO_LOCK_SCREEN:

NO_LOCK_SCREEN=1 make

Workloads

As opções "reference-workload" possibilitam aos desenvolvedores e testadores instalar rapidamente uma grande quanitdade de dados em diversos aplicativos em um aparelho que tenha recebido uma imagem recentemente.

Os comandos são (executador a partir do diretório gaia):

make reference-workload-light
  • 200 contatos
  • 200 menssagens SMS
  • Histórico de 50 ligações
  • 20 imagens na galeria
  • 20 músicas
  • 5 vídeos
make reference-workload-medium
  • 500 contatos
  • 500 menssagens SMS
  • Histórico de 100 ligações
  • 50 imagens na galeria
  • 50 músicas
  • 10 vídeos
make reference-workload-heavy
  • 1000 contatos
  • 1000 menssagens SMS
  • Histórico de 200 ligações
  • 100 imagens na galeria
  • 100 músicas
  • 20 vídeos
make reference-workload-x-heavy
  • 2000 contatos
  • 2000 menssagens SMS
  • Histórico de 500 ligações
  • 250 imagens na galeria
  • 250 músicas
  • 50 vídeos

Essas opções podem ser usadas com a variável APP, ou com a variável APPS que deve conter os nomes dos aplicativos separados por espaço:

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

Exemplo da variável APPS:

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

Para instalar as músicas, o utiliário mid3v2 deve ser instalado. Esse utilitário deve ser instalado com o seguinte comando:

sudo apt-get install python-mutagen

Se sua distro for o Fedora ou RHEL utilize:

sudo yum install python-mutagen

Documentação

Documentos do Gaia podem ser compilados via jsdoc3. Para gerá-los, use o seguintes comando:

make docs

Habilitando layout IME e dicionários

Para habilitar layout de teclado layout e os dicionários, use o seguinte comando:

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

Etiquetas do documento e colaboradores

 Colaboradores desta página: jwhitlock, rbrandao
 Última atualização por: jwhitlock,