summaryrefslogtreecommitdiff
path: root/fonts
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-04-29 03:01:23 +0000
committerNorbert Preining <norbert@preining.info>2024-04-29 03:01:23 +0000
commit9ffa8712668c5055c54742499d06caeb5cc9c87b (patch)
treed8b15c754d8d510751d6734b5f6028a2ba3cec89 /fonts
parent6ed42a56797a9b75307dcebfd82f2d69767e1b97 (diff)
CTAN sync 202404290301
Diffstat (limited to 'fonts')
-rw-r--r--fonts/ruscap/LICENSE93
-rw-r--r--fonts/ruscap/README.md39
-rw-r--r--fonts/ruscap/quo-usque-tandem.pdfbin0 -> 9305 bytes
-rw-r--r--fonts/ruscap/quo-usque-tandem.tex25
-rw-r--r--fonts/ruscap/ruscap10.mf386
-rw-r--r--fonts/utilities/ps2pk/c-auto.in98
-rwxr-xr-xfonts/utilities/ps2pk/configure.texk294
7 files changed, 870 insertions, 65 deletions
diff --git a/fonts/ruscap/LICENSE b/fonts/ruscap/LICENSE
new file mode 100644
index 0000000000..07e96fdc5e
--- /dev/null
+++ b/fonts/ruscap/LICENSE
@@ -0,0 +1,93 @@
+Copyright (c) 2024, Victor Sannier, with Reserved Font Name ruscap.
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+https://openfontlicense.org
+
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
diff --git a/fonts/ruscap/README.md b/fonts/ruscap/README.md
new file mode 100644
index 0000000000..202966c909
--- /dev/null
+++ b/fonts/ruscap/README.md
@@ -0,0 +1,39 @@
+This package contains the source for ruscap: a font for rustic capitals
+---an ancient Roman calligraphic script--- created with Metafont.
+
+The current version of ruscap is 1.0, released on 28 April 2024.
+
+# Characters included
+
+For the moment, only the letters of the Vergilius Vaticanus manuscript
+(i.e., Roman and Greek letters) are included.
+In particular, ruscap does not contain the Ramist letters J and U,
+indo-arabic numerals and punctuation marks.
+
+# Minimal Working Example
+
+```tex
+\documentclass{article}
+\font\ruscap=ruscap10 at 14pt
+
+\begin{document}
+ {\ruscap SALVETE OMNES}
+\end{document}
+```
+
+# Design
+
+For more information on the design of this font,
+please visit the following links:
+
+* <https://www.tug.org/TUGboat/tb44-2/tb137sannier-rustic.pdf>
+* <https://tug.org/tug2023/files/sa-12-sannier-rustic/sannier-rustic-slides.pdf>
+* <https://www.youtube.com/watch?v=A56GHVJGJo0>
+
+# License
+
+Copyright (c) 2024, Victor Sannier, with Reserved Font Name ruscap.
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is available with a FAQ at: https://openfontlicense.org
+
diff --git a/fonts/ruscap/quo-usque-tandem.pdf b/fonts/ruscap/quo-usque-tandem.pdf
new file mode 100644
index 0000000000..33cec7e3c9
--- /dev/null
+++ b/fonts/ruscap/quo-usque-tandem.pdf
Binary files differ
diff --git a/fonts/ruscap/quo-usque-tandem.tex b/fonts/ruscap/quo-usque-tandem.tex
new file mode 100644
index 0000000000..748e7b3d49
--- /dev/null
+++ b/fonts/ruscap/quo-usque-tandem.tex
@@ -0,0 +1,25 @@
+\documentclass{article}
+\usepackage[dvipsnames]{xcolor}
+
+\font\ruscap=ruscap10 at 14pt
+
+\begin{document}
+\pagestyle{empty}
+\ruscap
+\setlength\baselineskip{1.5ex}
+\setlength\lineskiplimit{-\maxdimen}
+
+\noindent
+\textcolor{Sepia}{QVO VSQVE TANDEM} ABVTERE, CATILINA, PATIENTIA NOSTRA?
+QVAM DIV ETIAM FVROR ISTE TVVS NOS ELVDET?
+QVEM AD FINEM SESE EFFRENATA IACTABIT AVDACIA?
+NIHIL NE TE NOCTVRNVM PRAESIDIVM PALATI, NIHIL VRBIS VIGILIAE,
+NIHIL TIMOR POPVLI, NIHIL CONCVRSVS BONORVM OMNIVM,
+NIHIL HIC MVNITISSIMVS HABENDI SENATVS LOCVS,
+NIHIL HORVM ORA VOLTVSQVE MOVERVNT?
+PATERE TVA CONSILIA NON SENTIS,
+CONSTRICTAM IAM HORVM OMNIVM SCIENTIA TENERI CONIVRATIONEM TVAM NON VIDES?
+QVID PROXIMA, QVID SVPERIORE NOCTE EGERIS, VBI FVERIS, QVOS CONVOCAVERIS,
+QVID CONSILII CEPERIS, QVEM NOSTRVM IGNORARE ARBITRARIS?
+\end{document}
+
diff --git a/fonts/ruscap/ruscap10.mf b/fonts/ruscap/ruscap10.mf
new file mode 100644
index 0000000000..7f9dcbc4c7
--- /dev/null
+++ b/fonts/ruscap/ruscap10.mf
@@ -0,0 +1,386 @@
+% ruscap10.mf
+% Version 1.0
+% Copyright (c) 2024, Victor Sannier with Reserved Font Name ruscap.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+
+font_size 10pt#;
+font_quad 13pt#;
+
+u# := 10/12 pt#; % unit
+s# := 2/3 u#; % sidebearing
+o# := 1/4 u#; % overshoot
+
+% Heights
+cap_height# := 9 u#;
+asc_height# := 11 u#;
+desc_height# := 1 u#;
+crossbar_height# := 5 u#;
+
+diag_angle := 90 + 35;
+spur_width# := 1/2 u#;
+spur_angle := 35;
+
+% Pen
+thick# := 5/4 u#;
+thin# := 1/3 u#;
+pen_angle := 65;
+
+% Serif
+serif_width# := 5/2 u#;
+serif_angle := 90 / 6;
+
+mode_setup;
+
+o_width# := 6u#;
+e# := 1/3 u#;
+
+define_pixels(u, s);
+define_whole_pixels(serif_width, spur_width, o_width);
+define_whole_vertical_pixels(cap_height, asc_height, desc_height);
+define_blacker_pixels(thick, thin);
+define_good_y_pixels(crossbar_height);
+define_corrected_pixels(o, e);
+
+pickup pensquare xscaled thick yscaled thin rotated pen_angle;
+rustic_pen := savepen;
+
+font_slant 0;
+font_normal_space 3/4 o_width#;
+font_normal_stretch 1/3 o_width#;
+font_normal_shrink 1/2 o_width#;
+font_x_height cap_height#;
+
+% Macros
+
+def draw_serif(suffix i, j)(expr width) =
+ rt x.j - lft x.i = width; y.i = y.j;
+ draw z.i{dir serif_angle} .. {dir serif_angle}z.j;
+enddef;
+
+def draw_diag_stroke(suffix i, j)(expr angle) =
+ z.i - z.i.l = z.j.r - z.j = spur_width * dir spur_angle;
+ z.j - z.i = whatever * (dir angle);
+ draw z.i.l .. z.i .. tension 3 .. z.j .. z.j.r;
+enddef;
+
+def draw_I(suffix i, j, k, l)(expr sw) =
+ x.i = x.j; % vertical stem
+ top y.i = h + o; bot y.j = 0;
+ z.i - z.i.l
+ = spur_width * dir spur_angle;
+
+ % Serif
+ rt (2 x.j - x.k) - lft x.k = serif_width;
+ y.j = y.k;
+ draw_serif(k, l)(sw);
+
+ draw z.i.l .. z.i .. tension 5 .. z.j;
+enddef;
+
+def draw_P(suffix i, j, k, l, m)(expr w) =
+ lft x.k = s;
+ draw_I(i, j, k, l)(serif_width);
+ rt x.m = w - s;
+ y.m = crossbar_height + 1/2 (cap_height - crossbar_height);
+ draw z.i{right} .. z.m .. {left}(x.i + e, crossbar_height);
+enddef;
+
+% Characters
+
+beginchar("A", 8u# + 2u#, cap_height#, 0);
+ "Rustic A";
+ pickup rustic_pen;
+
+ top y1 = h + o; bot y2 = -o; rt x2.r = w - s;
+ draw_diag_stroke(1, 2)(diag_angle);
+
+ lft x5 = s; bot y5 = 0;
+ z3 = 1/5 [z1, z2];
+ z4 = 1/2 [z5, z6];
+ draw_serif(5, 6)(serif_width);
+ draw z3 .. z4;
+
+ labels(range 1 thru 6);
+ labels(1.l, 2.r);
+endchar;
+
+beginchar("B", 5u# + 2s#, cap_height#, 0);
+ "Rustic B";
+ pickup rustic_pen;
+ draw_P(1, 2, 3, 4, 5)(5u);
+ rt x6 = w - s; y6 = crossbar_height / 2;
+ draw (x1, crossbar_height){right} .. z6 .. {left}z4;
+ labels(range 1 thru 6);
+endchar;
+
+beginchar("C", 5u# + 2s#, cap_height#, 0);
+ "Rustic C";
+ pickup rustic_pen;
+ rt x1 = w - s; y1 = (crossbar_height + cap_height) / 2;
+ x2 = w / 2; top y2 = h + o;
+ lft x3 = s; y3 = cap_height - crossbar_height;
+ x4 = w / 2; bot y4 = 0;
+ rt x5 = w - s; bot y5 = 0;
+ draw z1 .. z2 .. z3.. z4 .. {right}z5;
+ labels(range 1 thru 5);
+endchar;
+
+beginchar("D", 5u# + 2s#, cap_height#, 0);
+ "Rustic D";
+ pickup rustic_pen;
+ lft x3 = s;
+ draw_I(1, 2, 3, 4)(serif_width);
+ rt x5 = w - s; y5 = crossbar_height;
+ draw z1{right} .. z5 .. {left}z4;
+ labels(range 1 thru 5);
+endchar;
+
+def draw_EF =
+ pickup rustic_pen;
+ % Top stroke
+ lft x1 = s; top y1 = h;
+ rt x2 = w - s; top y2 = h;
+ draw z1{dir serif_angle} .. {dir serif_angle}z2;
+ % Down stroke
+ rt (2 x5 - x1) - lft x1 = serif_width;
+ x6 = x5; top y5 = h; bot y6 = 0;
+ draw z5 .. z6;
+ % Bottom stroke
+ lft x3 = s; bot y3 = 0; bot y4 = 0;
+ draw z3{dir serif_angle} .. {dir serif_angle}z4;
+ % Middle stroke
+ z7 = (x5, crossbar_height); z8 = (x2, crossbar_height);
+ draw z7 .. z8;
+ labels(range 1 thru 8);
+enddef;
+
+beginchar("E", 3.5u# + 2s#, cap_height#, 0);
+ "Rustic E";
+ x4 = x2;
+ draw_EF;
+endchar;
+
+beginchar("F", 4u# + 2s#, asc_height#, 0);
+ "Rustic F";
+ x6 = (x3 + x4) / 2;
+ draw_EF;
+endchar;
+
+beginchar("G", 5u# + 2s#, cap_height#, 0);
+ "Rustic G";
+ pickup rustic_pen;
+ rt x1 = w - s; y1 = (crossbar_height + cap_height) / 2;
+ x2 = w / 2; top y2 = h + o;
+ lft x3 = s; y3 = cap_height - crossbar_height;
+ x4 = w / 2; bot y4 = -o;
+ rt x5 = w - s; y5 = cap_height - crossbar_height;
+ draw z1 .. z2 .. z3.. z4 .. z5;
+ labels(range 1 thru 5);
+endchar;
+
+beginchar("H", 7u# + 2s#, cap_height#, 0);
+ "Rustic H";
+ pickup rustic_pen;
+ lft x9 = s; y9 = crossbar_height;
+ x1 - x9 = u;
+ draw_I(1, 2, 3, 4)(serif_width);
+ rt x8 = w - s;
+ draw_I(5, 6, 7, 8)(serif_width);
+ draw z9 .. (x5, crossbar_height);
+ labels(range 1 thru 9);
+endchar;
+
+beginchar("I", serif_width# + 2s#, cap_height#, 0);
+ "Rustic I";
+ pickup rustic_pen;
+ lft x3 = s;
+ draw_I(1, 2, 3, 4)(serif_width);
+ labels(range 1 thru 4);
+endchar;
+
+beginchar("K", 7u# + 2s#, cap_height#, 0);
+ "Rustic K";
+ pickup rustic_pen;
+ lft x3 = s;
+ draw_I(1, 2, 3, 4)(serif_width);
+ x5 = x6 - 2u; top y5 = h + o;
+ rt x6 = w - s; bot y6 = 0;
+ draw (x1 + e, crossbar_height) .. {dir pen_angle}z5;
+ draw (x1 + e, crossbar_height) .. tension 2 .. z6 - (u, 0) .. z6;
+ labels(range 1 thru 6);
+endchar;
+
+beginchar("L", 5u# + 2s#, asc_height#, 0);
+ "Rustic L";
+ pickup rustic_pen;
+ lft x3 = s;
+ draw_I(1, 2, 3, 4)(w - 2s);
+ labels(range 1 thru 4);
+ labels(1.l);
+endchar;
+
+beginchar("M", 11u# + 2s#, cap_height#, 0);
+ "Rustic M";
+ pickup rustic_pen;
+ top y1 = h + o; bot y2 = -o;
+ x1 = x5 + u;
+ 1/2 (z5.l + z5.r) = z5; lft x5 = s + serif_width/2;
+ a := (diag_angle - 90) * 3/4 + 90;
+ draw_diag_stroke(1, 2)(a);
+ top y3 = h + o; bot y4 = 0; rt x4.r = w - s;
+ a := (diag_angle - 90) / 3 + 90;
+ draw_diag_stroke(3, 4)(a);
+
+ % Left stem
+ bot y5 = 0;
+ draw z1 .. z5;
+ draw_serif(5.l, 5.r, serif_width);
+ % Right stem
+ draw z3 .. z2.r;
+
+ labels(range 1 thru 5);
+endchar;
+
+beginchar("N", 8u# + 2s#, cap_height#, 0);
+ "Rustic N";
+ pickup rustic_pen;
+
+ % Diagonal stroke
+ x1 + x2 = w; top y1 = h + o; bot y2 = 0;
+ draw_diag_stroke(1, 2)(diag_angle);
+
+ % Left stem
+ bot y3 = 0; lft x3 = s + serif_width/2 - u/3;
+ draw z1 .. z3;
+ 1/2 (z3.l + z3.r) = z3;
+ draw_serif(3.l, 3.r, serif_width);
+
+ % Right stem
+ x4 = x5 = x2.r; % vertical stem
+ top y4 = h + o; bot y5 = 0;
+ z4 - z4.l = spur_width * dir spur_angle;
+ draw z4.l .. z4 -- z5;
+
+ labels(range 1 thru 5);
+endchar;
+
+beginchar("O", o_width# + 2s#, cap_height#, 0);
+ "Rustic O";
+ pickup rustic_pen;
+ lft x2 = s; rt x4 = w - s; x1 = x3 = w/2;
+ top y1 = h + o; bot y3 = -o; y2 = y4 = crossbar_height;
+ draw z1 .. z2 .. z3 .. z4 .. cycle;
+ labels(range 1 thru 4);
+endchar;
+
+beginchar("P", 4u# + 2s#, cap_height#, 0);
+ "Rustic P";
+ pickup rustic_pen;
+ draw_P(1, 2, 3, 4, 5)(w);
+ labels(range 1 thru 5);
+endchar;
+
+beginchar("Q", 6u# + 2s#, cap_height#, u#);
+ "Rustic Q";
+ pickup rustic_pen;
+ lft x2 = s; rt x4 = o_width + s; x1 = x3 = (o_width + 2s)/2;
+ top y1 = h + o; bot y3 = -o; y2 = y4 = crossbar_height;
+ rt x5 = w - s; bot y5 = -d;
+ draw z3{curl 3} .. z4 .. z1 .. z2 .. z3 .. {down}z5;
+ labels(range 1 thru 5);
+endchar;
+
+beginchar("R", 7u# + 2s#, cap_height#, 0);
+ "Rustic P";
+ pickup rustic_pen;
+ draw_P(1, 2, 3, 4, 5)(5u);
+ rt x6 = w - s; bot y6 = 0;
+ draw (x1 + u, crossbar_height) .. tension 2 .. z6 - (u, 0) .. z6;
+ labels(range 1 thru 6);
+endchar;
+
+beginchar("S", 4u# + 2s#, cap_height#, 0);
+ "Rustic S";
+ pickup rustic_pen;
+ lft x2 = s; x2 = x4;
+ rt x1 = w - s; x1 = x3;
+ top y1 = h - 3/2 u; bot y4 = u/2;
+ h - y2 = y3; z2 - z3 = whatever * dir diag_angle;
+ draw z1{curl 2} .. z2 .. z3 .. {curl 1}z4;
+ labels(range 1 thru 4);
+endchar;
+
+beginchar("T", 6u# + 2s#, cap_height#, 0);
+ "Rustic T";
+ pickup rustic_pen;
+ x1 = w - x2; top y1 = h;
+ draw_serif(1, 2)(w - 2s);
+ x3 = w - x4; bot y3 = 0;
+ draw_serif(3, 4)(serif_width);
+ draw 1/2 [z1, z2] .. 1/2 [z3, z4];
+ labels(range 1 thru 4);
+endchar;
+
+beginchar("V", 6u# + 2s#, cap_height#, 1/2 u#);
+ "Rustic V";
+ pickup rustic_pen;
+ lft x1 = s + spur_width; rt x3 = rt x4 = rt x5 = w - s - u/2;
+ top y1 = h + o; bot y3 = u; top y4 = h + o; bot y5 = -d;
+ bot y2 = 0; lft x2 = 5/2 u + s;
+ draw z1{down} .. z2 .. z3{right};
+ z1 - z1.l = spur_width * dir spur_angle; draw z1.l .. z1; % Spur
+ draw z4{dir -85} .. z5;
+ labels(range 1 thru 5);
+endchar;
+
+beginchar("X", 7u# + 2s#, cap_height#, 0);
+ "Rustic X";
+ pickup rustic_pen;
+ top y1 = h + o; bot y2 = 0; rt x2.r = w - s;
+ draw_diag_stroke(1, 2)(diag_angle);
+ draw (x1, y2) .. (x2, y1);
+ labels(range 1 thru 4);
+endchar;
+
+beginchar("Y", 8u# + 2s#, cap_height#, 0);
+ "Rustic Y";
+ pickup rustic_pen;
+ x2 = x3 = w/2;
+ lft x1 = s; rt x4 = w - s;
+ bot y3 = 0;
+ top y1 = top y4 = h + o; y2 = crossbar_height;
+ draw z1 .. z2 .. tension 2 .. z3;
+ draw z4{left} .. z2;
+ % Serif
+ 1/2 (z3.l + z3.r) = z3;
+ draw_serif(3.l, 3.r, serif_width);
+ labels(range 1 thru 4);
+endchar;
+
+beginchar("Z", 6u# + 2s#, cap_height#, 0);
+ "Rustic Z";
+ pickup rustic_pen;
+ lft x1 = s; top y1 = h;
+ draw_serif(1, 2)(w - 2s);
+ lft x3 = s; bot y3 = 0;
+ draw_serif(3, 4)(w - 2s);
+ draw z2 .. z3;
+ labels(range 1 thru 4);
+endchar;
+
+ligtable "A": "T" kern -1.5u#, "Y" kern -1.5u#;
+ligtable "B": "C" kern .5u#, "M" kern -u#;
+ligtable "F": "A" kern -.5u#, "M" kern -u#, "T" kern -u#;
+ligtable "G": "C" kern .5u#, "Q" kern .5u#, "G" kern .5u#, "O" kern .5u#;
+ligtable "K": "C" kern -u#, "G" kern -u#, "T" kern -u#, "Y" kern -u#;
+ligtable "L": "T" kern -u#, "Y" kern -2u#;
+ligtable "M": "T" kern -u#;
+ligtable "O": "M" kern -.5u#;
+ligtable "P": "A" kern -.5u#, "M" kern -.5u#;
+ligtable "R": "C" kern -.5u#, "O" kern -u#, "T" kern -u#, "Y" kern -1.5u#;
+ligtable "T": "A" kern -u#, "H" kern -u#, "M" kern -u#;
+ligtable "V": "M" kern -u#;
+ligtable "Y": "M" kern -u#;
+
+end;
+
diff --git a/fonts/utilities/ps2pk/c-auto.in b/fonts/utilities/ps2pk/c-auto.in
index 2823983551..152fddaded 100644
--- a/fonts/utilities/ps2pk/c-auto.in
+++ b/fonts/utilities/ps2pk/c-auto.in
@@ -53,6 +53,9 @@
/* Define to 1 if you have the 'memset' function. */
#undef HAVE_MEMSET
+/* Define to 1 if you have the <minix/config.h> header file. */
+#undef HAVE_MINIX_CONFIG_H
+
/* Define to 1 if you have the 'mkstemp' function. */
#undef HAVE_MKSTEMP
@@ -115,6 +118,9 @@
/* Define to 1 if you have the 'vprintf' function. */
#undef HAVE_VPRINTF
+/* Define to 1 if you have the <wchar.h> header file. */
+#undef HAVE_WCHAR_H
+
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
@@ -144,6 +150,98 @@
/* Define to the current TeX Live version string. */
#undef TL_VERSION
+/* Enable extensions on AIX, Interix, z/OS. */
+#ifndef _ALL_SOURCE
+# undef _ALL_SOURCE
+#endif
+/* Enable general extensions on macOS. */
+#ifndef _DARWIN_C_SOURCE
+# undef _DARWIN_C_SOURCE
+#endif
+/* Enable general extensions on Solaris. */
+#ifndef __EXTENSIONS__
+# undef __EXTENSIONS__
+#endif
+/* Enable GNU extensions on systems that have them. */
+#ifndef _GNU_SOURCE
+# undef _GNU_SOURCE
+#endif
+/* Enable X/Open compliant socket functions that do not require linking
+ with -lxnet on HP-UX 11.11. */
+#ifndef _HPUX_ALT_XOPEN_SOCKET_API
+# undef _HPUX_ALT_XOPEN_SOCKET_API
+#endif
+/* Identify the host operating system as Minix.
+ This macro does not affect the system headers' behavior.
+ A future release of Autoconf may stop defining this macro. */
+#ifndef _MINIX
+# undef _MINIX
+#endif
+/* Enable general extensions on NetBSD.
+ Enable NetBSD compatibility extensions on Minix. */
+#ifndef _NETBSD_SOURCE
+# undef _NETBSD_SOURCE
+#endif
+/* Enable OpenBSD compatibility extensions on NetBSD.
+ Oddly enough, this does nothing on OpenBSD. */
+#ifndef _OPENBSD_SOURCE
+# undef _OPENBSD_SOURCE
+#endif
+/* Define to 1 if needed for POSIX-compatible behavior. */
+#ifndef _POSIX_SOURCE
+# undef _POSIX_SOURCE
+#endif
+/* Define to 2 if needed for POSIX-compatible behavior. */
+#ifndef _POSIX_1_SOURCE
+# undef _POSIX_1_SOURCE
+#endif
+/* Enable POSIX-compatible threading on Solaris. */
+#ifndef _POSIX_PTHREAD_SEMANTICS
+# undef _POSIX_PTHREAD_SEMANTICS
+#endif
+/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */
+#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
+# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */
+#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
+# undef __STDC_WANT_IEC_60559_BFP_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */
+#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
+# undef __STDC_WANT_IEC_60559_DFP_EXT__
+#endif
+/* Enable extensions specified by C23 Annex F. */
+#ifndef __STDC_WANT_IEC_60559_EXT__
+# undef __STDC_WANT_IEC_60559_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */
+#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
+# undef __STDC_WANT_IEC_60559_FUNCS_EXT__
+#endif
+/* Enable extensions specified by C23 Annex H and ISO/IEC TS 18661-3:2015. */
+#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
+# undef __STDC_WANT_IEC_60559_TYPES_EXT__
+#endif
+/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */
+#ifndef __STDC_WANT_LIB_EXT2__
+# undef __STDC_WANT_LIB_EXT2__
+#endif
+/* Enable extensions specified by ISO/IEC 24747:2009. */
+#ifndef __STDC_WANT_MATH_SPEC_FUNCS__
+# undef __STDC_WANT_MATH_SPEC_FUNCS__
+#endif
+/* Enable extensions on HP NonStop. */
+#ifndef _TANDEM_SOURCE
+# undef _TANDEM_SOURCE
+#endif
+/* Enable X/Open extensions. Define to 500 only if necessary
+ to make mbstate_t available. */
+#ifndef _XOPEN_SOURCE
+# undef _XOPEN_SOURCE
+#endif
+
+
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
diff --git a/fonts/utilities/ps2pk/configure.texk b/fonts/utilities/ps2pk/configure.texk
index ae5955b377..da6a1686d8 100755
--- a/fonts/utilities/ps2pk/configure.texk
+++ b/fonts/utilities/ps2pk/configure.texk
@@ -1608,6 +1608,41 @@ fi
} # ac_fn_c_try_compile
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ eval "$3=yes"
+else case e in #(
+ e) eval "$3=no" ;;
+esac
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;
+esac
+fi
+eval ac_res=\$$3
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_compile
+
# ac_fn_c_try_link LINENO
# -----------------------
# Try to link conftest.$ac_ext, and return whether this succeeded.
@@ -1656,41 +1691,6 @@ fi
} # ac_fn_c_try_link
-# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists and can be compiled using the include files in
-# INCLUDES, setting the cache variable VAR accordingly.
-ac_fn_c_check_header_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-printf %s "checking for $2... " >&6; }
-if eval test \${$3+y}
-then :
- printf %s "(cached) " >&6
-else case e in #(
- e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"
-then :
- eval "$3=yes"
-else case e in #(
- e) eval "$3=no" ;;
-esac
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;
-esac
-fi
-eval ac_res=\$$3
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-printf "%s\n" "$ac_res" >&6; }
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-
-} # ac_fn_c_check_header_compile
-
# ac_fn_c_check_func LINENO FUNC VAR
# ----------------------------------
# Tests whether FUNC exists, setting the cache variable VAR accordingly
@@ -2367,6 +2367,7 @@ printf "%s\n" "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
+as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H"
# Test code for whether the C compiler supports C89 (global declarations)
ac_c_conftest_c89_globals='
/* Does the compiler advertise C89 conformance?
@@ -2692,7 +2693,6 @@ main (int argc, char **argv)
}
"
-as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H"
as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H"
as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H"
as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H"
@@ -2701,6 +2701,8 @@ as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H"
as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H"
as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H"
as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H"
+as_fn_append ac_header_c_list " wchar.h wchar_h HAVE_WCHAR_H"
+as_fn_append ac_header_c_list " minix/config.h minix_config_h HAVE_MINIX_CONFIG_H"
as_fn_append ac_func_c_list " vprintf HAVE_VPRINTF"
# Auxiliary files required by this configure script.
@@ -4654,6 +4656,183 @@ fi
+ac_header= ac_cache=
+for ac_item in $ac_header_c_list
+do
+ if test $ac_cache; then
+ ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default"
+ if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then
+ printf "%s\n" "#define $ac_item 1" >> confdefs.h
+ fi
+ ac_header= ac_cache=
+ elif test $ac_header; then
+ ac_cache=$ac_item
+ else
+ ac_header=$ac_item
+ fi
+done
+
+
+
+
+
+
+
+
+if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes
+then :
+
+printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
+
+fi
+
+
+
+
+
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5
+printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; }
+if test ${ac_cv_safe_to_define___extensions__+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+# define __EXTENSIONS__ 1
+ $ac_includes_default
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_safe_to_define___extensions__=yes
+else case e in #(
+ e) ac_cv_safe_to_define___extensions__=no ;;
+esac
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5
+printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; }
+
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5
+printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; }
+if test ${ac_cv_should_define__xopen_source+y}
+then :
+ printf %s "(cached) " >&6
+else case e in #(
+ e) ac_cv_should_define__xopen_source=no
+ if test $ac_cv_header_wchar_h = yes
+then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #include <wchar.h>
+ mbstate_t x;
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+else case e in #(
+ e) cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+ #define _XOPEN_SOURCE 500
+ #include <wchar.h>
+ mbstate_t x;
+int
+main (void)
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+ ac_cv_should_define__xopen_source=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext ;;
+esac
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi ;;
+esac
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5
+printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; }
+
+ printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _DARWIN_C_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _GNU_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _HPUX_ALT_XOPEN_SOCKET_API 1" >>confdefs.h
+
+ printf "%s\n" "#define _NETBSD_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _OPENBSD_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_BFP_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_LIB_EXT2__ 1" >>confdefs.h
+
+ printf "%s\n" "#define __STDC_WANT_MATH_SPEC_FUNCS__ 1" >>confdefs.h
+
+ printf "%s\n" "#define _TANDEM_SOURCE 1" >>confdefs.h
+
+ if test $ac_cv_header_minix_config_h = yes
+then :
+ MINIX=yes
+ printf "%s\n" "#define _MINIX 1" >>confdefs.h
+
+ printf "%s\n" "#define _POSIX_SOURCE 1" >>confdefs.h
+
+ printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h
+
+else case e in #(
+ e) MINIX= ;;
+esac
+fi
+ if test $ac_cv_safe_to_define___extensions__ = yes
+then :
+ printf "%s\n" "#define __EXTENSIONS__ 1" >>confdefs.h
+
+fi
+ if test $ac_cv_should_define__xopen_source = yes
+then :
+ printf "%s\n" "#define _XOPEN_SOURCE 500" >>confdefs.h
+
+fi
+
# Check whether --enable-compiler-warnings was given.
if test ${enable_compiler_warnings+y}
then :
@@ -8513,35 +8692,6 @@ func_munge_path_list ()
esac
}
-ac_header= ac_cache=
-for ac_item in $ac_header_c_list
-do
- if test $ac_cache; then
- ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default"
- if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then
- printf "%s\n" "#define $ac_item 1" >> confdefs.h
- fi
- ac_header= ac_cache=
- elif test $ac_header; then
- ac_cache=$ac_item
- else
- ac_header=$ac_item
- fi
-done
-
-
-
-
-
-
-
-
-if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes
-then :
-
-printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
"
if test "x$ac_cv_header_dlfcn_h" = xyes
@@ -8636,6 +8786,8 @@ esac
echo 'tldbg:KPSE_COMMON called (pkg=ps2pkm, amopt=no-define)' >&5
echo 'tldbg:KPSE_BASIC called (pkg=ps2pkm, amopt=no-define)' >&5
+#
+# am_init_automake
if test "`cd $srcdir && pwd`" != "`pwd`"; then
# Use -I$(srcdir) only when $(srcdir) != ., so that make's output
# is not polluted with repeated "-I."
@@ -8757,6 +8909,8 @@ END
fi
+# am_maintainer_mode
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
printf %s "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
# Check whether --enable-maintainer-mode was given.
@@ -8781,6 +8935,11 @@ fi
MAINT=$MAINTAINER_MODE_TRUE
+
+# See comments in kpse-setup.m4 about system extensions.
+
+
+# Check whether prototypes work.
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler accepts prototypes" >&5
printf %s "checking whether the compiler accepts prototypes... " >&6; }
if test ${kb_cv_c_prototypes+y}
@@ -8814,6 +8973,8 @@ printf "%s\n" "$kb_cv_c_prototypes" >&6; }
if test "x$kb_cv_c_prototypes" = xno; then
as_fn_error $? "Sorry, your compiler does not understand prototypes." "$LINENO" 5
fi
+
+# kpse_compiler_warnings options.
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking what warning flags to pass to the C compiler" >&5
printf %s "checking what warning flags to pass to the C compiler... " >&6; }
if test ${kpse_cv_warning_cflags+y}
@@ -8871,6 +9032,9 @@ WARNING_CFLAGS=$kpse_cv_warning_cflags
+# end of kpse_basic macro.
+echo 'tldbg:KPSE_BASIC done (pkg=ps2pkm, amopt=no-define)' >&5
+
# am_prog_ar must be called before lt_init.
if test -n "$ac_tool_prefix"; then