diff options
author | Martin Schröder <martin@oneiros.de> | 2008-05-13 20:14:34 +0000 |
---|---|---|
committer | Martin Schröder <martin@oneiros.de> | 2008-05-13 20:14:34 +0000 |
commit | 00f7c0e494a99e890d20c7723c15feeddd85c73e (patch) | |
tree | e3ab623f9495dc83f9e6c4e75a117112988f6851 /Build | |
parent | 0bb14294123cfedb8ff0a7515d4cc4a2ba70e2a9 (diff) |
pdftex: compile in the pool file
git-svn-id: svn://tug.org/texlive/trunk@8115 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r-- | Build/source/texk/web2c/pdftexdir/NEWS | 1 | ||||
-rw-r--r-- | Build/source/texk/web2c/pdftexdir/pdftex.ch | 73 | ||||
-rw-r--r-- | Build/source/texk/web2c/pdftexdir/pdftex.mk | 5 | ||||
-rw-r--r-- | Build/source/texk/web2c/pdftexdir/pdftex.web | 2 |
4 files changed, 79 insertions, 2 deletions
diff --git a/Build/source/texk/web2c/pdftexdir/NEWS b/Build/source/texk/web2c/pdftexdir/NEWS index 424dd18e752..edf84569fe6 100644 --- a/Build/source/texk/web2c/pdftexdir/NEWS +++ b/Build/source/texk/web2c/pdftexdir/NEWS @@ -2,6 +2,7 @@ pdfTeX 3.1415926-1.40.8 was released on 2008-05-?? -------------------------------------------------- - Incorporated the new version of TeX: 3.1415926 +- The pool file is now compiled in - Bugfix: - Fonts from included PDFs for which maplines existed missed their /StemV values diff --git a/Build/source/texk/web2c/pdftexdir/pdftex.ch b/Build/source/texk/web2c/pdftexdir/pdftex.ch index c5089fc0e68..22ef15ee939 100644 --- a/Build/source/texk/web2c/pdftexdir/pdftex.ch +++ b/Build/source/texk/web2c/pdftexdir/pdftex.ch @@ -63,6 +63,79 @@ @z @x +@ @d bad_pool(#)==begin wake_up_terminal; write_ln(term_out,#); + a_close(pool_file); get_strings_started:=false; return; + end +@<Read the other strings...@>= +name_length := strlen (pool_name); +name_of_file := xmalloc_array (ASCII_code, name_length + 1); +strcpy (stringcast(name_of_file+1), pool_name); {copy the string} +if a_open_in (pool_file, kpse_texpool_format) then + begin c:=false; + repeat @<Read one string, but return |false| if the + string memory space is getting too tight for comfort@>; + until c; + a_close(pool_file); get_strings_started:=true; + end +else bad_pool('! I can''t read ', pool_name, '; bad path?') +@.I can't read TEX.POOL@> + +@ @<Read one string...@>= +begin if eof(pool_file) then bad_pool('! ', pool_name, ' has no check sum.'); +@.TEX.POOL has no check sum@> +read(pool_file,m); read(pool_file,n); {read two digits of string length} +if m='*' then @<Check the pool check sum@> +else begin if (xord[m]<"0")or(xord[m]>"9")or@| + (xord[n]<"0")or(xord[n]>"9") then + bad_pool('! ', pool_name, ' line doesn''t begin with two digits.'); +@.TEX.POOL line doesn't...@> + l:=xord[m]*10+xord[n]-"0"*11; {compute the length} + if pool_ptr+l+string_vacancies>pool_size then + bad_pool('! You have to increase POOLSIZE.'); +@.You have to increase POOLSIZE@> + for k:=1 to l do + begin if eoln(pool_file) then m:=' '@+else read(pool_file,m); + append_char(xord[m]); + end; + read_ln(pool_file); g:=make_string; + end; +end + +@ The \.{WEB} operation \.{@@\$} denotes the value that should be at the +end of this \.{TEX.POOL} file; any other value means that the wrong pool +file has been loaded. +@^check sum@> + +@<Check the pool check sum@>= +begin a:=0; k:=1; +loop@+ begin if (xord[n]<"0")or(xord[n]>"9") then + bad_pool('! ', pool_name, ' check sum doesn''t have nine digits.'); +@.TEX.POOL check sum...@> + a:=10*a+xord[n]-"0"; + if k=9 then goto done; + incr(k); read(pool_file,n); + end; +done: if a<>@$ then + bad_pool('! ', pool_name, ' doesn''t match; tangle me again (or fix the path).'); +@.TEX.POOL doesn't match@> +c:=true; +end +@y +@ @<Read the other strings...@>= + g := loadpoolstrings((pool_size-string_vacancies)); + if g=0 then begin + wake_up_terminal; write_ln(term_out,'! You have to increase POOLSIZE.'); + get_strings_started:=false; + return; + end; + get_strings_started:=true; + +@ Empty module + +@ Empty module +@z + +@x @d frozen_null_font=frozen_control_sequence+11 {permanent `\.{\\nullfont}'} @y diff --git a/Build/source/texk/web2c/pdftexdir/pdftex.mk b/Build/source/texk/web2c/pdftexdir/pdftex.mk index c649f7cfeef..8130c237a26 100644 --- a/Build/source/texk/web2c/pdftexdir/pdftex.mk +++ b/Build/source/texk/web2c/pdftexdir/pdftex.mk @@ -25,7 +25,8 @@ $(pdftexdir)/pdftex.version: $(srcdir)/$(pdftexdir)/pdftex.web # The C sources. pdftex_c = pdftexini.c pdftex0.c pdftex1.c pdftex2.c pdftex3.c -pdftex_o = pdftexini.o pdftex0.o pdftex1.o pdftex2.o pdftex3.o pdftexextra.o +pdftex_o = pdftexini.o pdftex0.o pdftex1.o pdftex2.o pdftex3.o pdftexextra.o \ +pdftex-pool.o # Making pdftex pdftex: pdftexd.h $(pdftex_o) $(pdftexextra_o) $(pdftexlibsdep) @@ -42,6 +43,8 @@ $(pdftexdir)/pdftexextra.h: $(pdftexdir)/pdftexextra.in $(pdftexdir)/pdftex.vers sed -e s/PDFTEX-VERSION/`cat $(pdftexdir)/pdftex.version`/ \ -e s/ETEX-VERSION/`cat etexdir/etex.version`/ \ $(srcdir)/$(pdftexdir)/pdftexextra.in >$@ +pdftex-pool.c: pdftex.pool $(makecpool) + $(makecpool) pdftex.pool pdftexdir/ptexlib.h >$@ || rm -f $@ # Tangling pdftex.p pdftex.pool: tangle $(srcdir)/$(pdftexdir)/pdftex.web pdftex.ch diff --git a/Build/source/texk/web2c/pdftexdir/pdftex.web b/Build/source/texk/web2c/pdftexdir/pdftex.web index 050154437c6..2f1948a7b4e 100644 --- a/Build/source/texk/web2c/pdftexdir/pdftex.web +++ b/Build/source/texk/web2c/pdftexdir/pdftex.web @@ -289,7 +289,7 @@ known as `\eTeX'. @# @d pdftex_version==140 { \.{\\pdftexversion} } @d pdftex_revision=="8" { \.{\\pdftexrevision} } -@d pdftex_version_string=='-1.40.8-beta-20080506' {current \pdfTeX\ version} +@d pdftex_version_string=='-1.40.8-beta-20080513' {current \pdfTeX\ version} @# @d pdfeTeX_banner=='This is pdfeTeX, Version 3.1415926',pdftex_version_string,eTeX_version_string {printed when \pdfeTeX\ starts} |