summaryrefslogtreecommitdiff
path: root/new-infra/README
blob: be08e705e5cfe55c05c8ca26960530628966bef5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
A short example implementation
status 2007-05-13

current status:
- tlsrc -> tlp conversion
  Implemented:
	. auto generation of packages in texmf-dist according to their
	  directory name
	. package version based on the maximum of all package file 
	  last changed revision number of subversion
  Missing:
  	. update/inclusion of information from the catalogue
	. missing source keys?
	. ???

  I have generated tlsrc files for all texmf-dist/tpm/*.tpm files containing
  only the name, executes, and depends, and from these I generated tlp files
  The automatic procedure works quiet well:
  	tlsrc files with manual patterns: 16
	buggy packages: 22
  Buggy packages are packages where the files currently in the tpm and 
  those in the generated tlp differ. (one package is probably a false error:
  arabxetex)

  The list of tlsrc files which had to be adjusted is (not surpising):
  bibtex, context, dvips, fontinst, groff, lambda, latex, makeindex,
  metafont, metapost, mex, mft, omega, plain, tex4ht, xetex

  Generation time on my small laptop for all texmf-dist tlp is around 40sec

- tlp -> tldb conversion
  Implemented:
  	. just do it, trivial, cat $i, echo "" ...
  Missing:
  	. no idea what it shoud do
- usage of tldb
  Implemented:
  	. reading of the whole tldp and generation of a perl hash
	. generation of tlp files from the tldp database
  Missing
  	. replacement/update/other operations on single tlp entries
	  this should be trivial as it is only hash operations

make runs the following commands:

1) generates tlp from tlsrc/*.tlsrc
	currently implemented is the auto generation of packages
	if no pattern is given (see tlsrc/foo.tlsrc) and more
	complicated patterns (using perl regexp atm).

2) generates a tldb from tlp/*.tlp
	trivial concatenation with empty lines between

3) moves tlp to tlp.old

4) re-generates the tlp from the tldb
	use_tldb defines a function read_tldb_file which reads the whole
	file into a hash

5) compares tlp.old and tlp