[linux-l] Re: Suche Freiwillige für (LaTeX-)Projekt
Rocco Rutte
pdmef at cs.tu-berlin.de
Do Jun 2 12:10:31 CEST 2005
Hi,
* Oliver Bandel [05-06-01 23:54:49 +0200] wrote:
>On Wed, Jun 01, 2005 at 03:50:38PM +0000, Rocco Rutte wrote:
>Aber wenn man ein makefile von hand baut, dann schreibt man da eben alle Dateien
>rein, von denen eine bestimmte Dtaie abhängig ist.
Eben das will ja _gerade_ _nicht_ machen.
>Habe zwar schon ewig keine makefiles mehr zusammen gebaut,
>aber muesste es nicht so aussehen:
>TEXFILES=book.tex chapter1.tex chaper2.tex blahblah.tex chapterX.tex
>book.pdf: $(TEXFILES)
> pdflatex book.tex
> pdflatex book.tex
>...sofern alle anderen TeX-Files von book.tex included wurden?!
Und jetzt kommt jemand an und sagt, dass es Tools wie thumbpdf gibt und
wenn du das haben willst, musst du für jedes PDF-File, das du aus
TeX-Quellen baust, das Makefile anpassen. Der Witz an Makefiles ist ja
gerade, dass du Include-Makefiles mit Patterns haben kannst. Ich habe
wie gesagt ein TeX-Makefile für alles. Dort gibt es einmal eine Regel
für TeX->PDF. In den einzelnen Verzeichnissen habe ich dann nur:
| TEXFILES=book.pdf
| all: $(TEXFILES)
| clean: texclean
| [...]
| include $(HOME)/mk/Makefile.tex
und weil ich manche Verzeichnisse habe, wo nur LaTeX-Quellen sind, geht
das natürlich noch kürzer:
| TEXFILES=book.pdf article1.pdf article2.ps.gz foo.pdf.zip
| include $(HOME)/mk/Makefile.texonly
>Für Bilder usw. muesste man das auch noch machen, sofern da was generiert wird.
Yepp.
>Was man also machen muß, sind die Abhängigkeiten im makefile richtig
>zusammen zu suchen.
Yepp.
>Aber Dein Tool scheint das nicht zu machen...?!
Doch. Es macht genau das, also eigentlich _nur_ das. Warum das manuell
für mich nicht praktikabel ist:
$ find ~/docs -name '*.tex' | wc -l
278
$ find ~/docs -name 'Makefile' | wc -l
96
Ich könnte jetzt anfangen das alles manuell anzupassen. Das würde genau
so lange dauern wie das Tool zu schreiben. Aber: ich müsste es auch
manuell aktuell halten. Jetzt mache ich nur 'cd ~/docs && gmake depend'.
bye, Rocco
--
:wq!
Mehr Informationen über die Mailingliste linux-l