J.3. Construção da documentação com o Make #

J.3.1. HTML
J.3.2. Manpages
J.3.3. PDF
J.3.4. Verificação da sintaxe

Após configurar tudo, deve-se mudar para o diretório doc/src/sgml e executar um dos comandos descritos nas subseções a seguir para construir a documentação. (Lembre-se de usar o make do GNU.)

J.3.1. HTML #

Para construir a versão da documentação em HTML, deve-se executar:

doc/src/sgml$ make html

Este também é o destino (target) padrão. A saída é gerada no subdiretório html.

Para construir a documentação em HTML com a folha de estilo usada em postgresql.org, em vez da folha de estilo simples padrão, deve-se executar:

doc/src/sgml$ make STYLE=website html

Se for usada a opção STYLE=website, os arquivos HTML gerados irão incluir referências a folhas de estilo hospedadas em postgresql.org , requerendo acesso à rede para visualizar.

J.3.2. Manpages #

São usadas as folhas de estilo DocBook XSL para converter as refentry das páginas do DocBook em saída *roff adequada para as man pages (páginas de manual). Para construir as man pages, deve-se executar:

doc/src/sgml$ make man

J.3.3. PDF #

Para construir a versão em PDF da documentação usando o FOP, deve-se executar um dos seguintes comandos, dependendo do formato do papel escolhido:

  • Para o formato A4:

    doc/src/sgml$ make postgres-A4.pdf
    

  • Para o formato carta dos EUA:

    doc/src/sgml$ make postgres-US.pdf
    

Como a documentação do PostgreSQL é bem grande, o FOP exige uma quantidade significativa de memória. Por isto, em alguns sistemas, a construção falha com uma mensagem de erro relacionada à memória. Geralmente esta falha pode ser corrigida definindo as configurações de heap do Java no arquivo de configuração ~/.foprc. Por exemplo:

# FOP binary distribution
FOP_OPTS='-Xmx1500m'
# Debian
JAVA_ARGS='-Xmx1500m'
# Red Hat
ADDITIONAL_FLAGS='-Xmx1500m'

Há uma quantidade mínima de memória necessária e, até certo ponto, mais memória parece tornar o processo um pouco mais rápido. Em sistemas com muito pouca memória (menos de 1 GB), a construção será muito lenta devido à paginação (swap), ou não irá funcionar.

Na sua configuração padrão, o FOP irá emitir uma mensagem INFO para cada página. O nível de registro pode ser alterado via ~/.foprc:

LOGCHOICE=-Dorg.apache.commons.logging.Log=​org.apache.commons.logging.impl.SimpleLog
LOGLEVEL=-Dorg.apache.commons.logging.simplelog.defaultlog=WARN

Outros processadores para XSL-FO (Extensible Stylesheet Language Formatting Objects) também podem ser usados manualmente, mas o processo de construção automatizado tem suporte apenas o FOP.

J.3.4. Verificação da sintaxe #

A construção da documentação pode levar bastante tempo. Mas existe um método para verificar apenas se a sintaxe dos arquivos da documentação está correta, que leva apenas alguns segundos:

doc/src/sgml$ make check