Como gerar apenas dependências do latexmk?

Como gerar apenas dependências do latexmk?

Eu gostaria de usar latexmkem um Makefile, então li a seção do manual sobre isso. No entanto, a etapa de geração de dependência parece menos que ideal. Especificamente, parece que latexmksó é possível mostrar dependências após a construção completa de um arquivo de saída (o que pode levar muito tempo no meu caso). Existe uma maneira de ter latexmkapenas dependências de saída em um arquivo e não marcar o arquivo de saída real como atualizado?

Tentei a seguinte regra no meu Makefile, mas parece marcar o arquivo de saída como atualizado. Eu também acho que ele poderia ser executado várias vezes (ou que falhou), dependendo do que está no arquivo de log.

%.d: %.tex
    @echo "Generating $@ from $<"
    @set -e; \
     $(LATEXMK) -M -MF $@ -quiet -pdf \
      -pdflatex="echo Generating dependencies from %T" $<

Responder1

@tohecz: Você está correto.

O problema é que as dependências dependem de maneira complicada do conteúdo detalhado do arquivo TeX (e de todos os arquivos que ele chama, incluindo o arquivo de classe e os arquivos de estilo). A única maneira fácil de determinar as dependências é executar pdflatex(ou latexconforme apropriado) e depois analisar os arquivos resultantes (os relevantes são os arquivos .fls, .loge .aux). Se o .texarquivo for alterado, as informações .pdfe as informações de dependência estarão simultaneamente desatualizadas.

Portanto, se você quiser executar pdflatexpara determinar as dependências, obterá um novo .pdfarquivo como efeito colateral. Portanto, não faz sentido tentar atualizar as informações de dependência sem atualizar o .pdfarquivo.

informação relacionada